微服务
优势
- 独立部署
- 技术多样性
- 弹性扩展
- 容错性
- 团队自治
和SOA&ESB的区别
- SOA + ESB :所有人必须通过同一个大门进出(集中控制)。
- 微服务 :每个房间都有独立的门(服务自治),自由进出。
微服务带来的问题
- 不能保证服务之间数据的一致性(分布式事务和异步补偿机制)
- 拆分过细,关系复杂
- 调用链长,网络异常,定位困难
- 没自动化测试,集成,交付,压力大
康威定律
- 组织沟通方式会通过系统设计表达出来–产品是沟通的结果
- 时间再多一件事情也不可能做的完美,但总有时间做完一件事情–敏捷开发
- 线型系统和线型组织架构间有潜在的异质同态特性–什么团队就做成什么样子
- 大的系统组织总是比小系统更倾向于分解–合久必分,分而治之