微服务架构设计模式
模块化是开发大型、复杂应用程序的基础
微服务架构可以消除对某项技术栈的长期依赖
微服务架构的弊端和问题:
- 服务的拆分和定义是一项挑战;
- 分布式系统带来的各种复杂性,使开发、测试和部署变得更困难;
- 当部署跨越多个服务功能时需要谨慎的协调更多的开发团队;
- 开发者需要思考到底在应用的什么阶段使用微服务架构
要成功部署微服务,需要高度自动会的基础设施
架构设计的核心是决策
模式是针对特定上下文中发生的问题的可重用解决方案
微服务架构的关键挑战是将应用程序功能分解为服务
应用程序有两个方面的需求:一是功能性需求;二是非功能需求,可维护性、可测试性、可扩展性和可部署性
服务是一个单一的、可独立部署的软件组件
微服务架构的最核心特性是服务之间的松耦合性
服务分解的几个障碍:
- 网络延迟,可能往返多次
- 同步通信降低了可用性
- 跨服务数据一致性
消息的格式:
- 文本,JSON和XML
- 二进制,Protocol Buffers和Avro
##############阁下如果是抄袭,爬取文章作恶或误导他人的开发者,请阅读中国现行法律的相关处罚条例再动手,转载之前最好先验证#############