《持续交付2.0》读书笔记-03(第5章)
持续交付的软件系统架构
Q & A
- 有哪些常见架构?
架构 | 优点 | 缺点 | 适用于 |
---|---|---|---|
Microcore/Plugin | Good Extensibility 易发布 易测试 可定制 可渐进式开发 | Bad scalability 开发难度较高(插件与内核通信复杂) 高度依赖框架 | 客户端开发 |
Microservice | Good Scalability 易部署 易开发 易unit test | 大量依赖微服务可能使系统变得凌乱和笨重,网络通信消耗大 调试诊断困难 跨服务联测困难 公共类库升级困难 | 服务端。建立全面的微服务监测体系 |
Monolithic | 利于开发和调试 部署操作本身比较简单 容易扩展 | 混乱代码,新人易污染 难与新技术共同使用 持续部署困难 | 创业公司,中小型项目 |
- 设计架构的时候需要考虑的因素有哪些?
- 测试
- 部署
- 监控
- 扩展
- Failure
- 架构改造模式有哪些?
- 拆迁者
- 绞杀者