来自:https://blog.csdn.net/cutter2002/article/details/54231826

系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。

围绕业务能力组织服务、自动化部署、智能端点、对语言及数据的去集中化控制。

 

微服务的结构

微服务通信机制

 

  •   将组件定义为可被独立替换和升级的软件单元。
  •   以业务能力为出发点组织服务的策略。
  •   倡导谁开发,谁运营的开发运维一体化方法。
  •   RESTful HTTP协议是微服务架构中最常用的通讯机制。
  •   每个微服务可以考虑选用最佳工具完成(如不同的编程语言)。
  •   允许不同微服务采用不同的数据持久化技术。
  •   微服务非常重视建立架构及业务相关指标的实时监控和日志机制,必须考虑每个服务的失败容错机制。
  •   注重快速更新,因此系统会随时间不断变化及演进。可替代性模块化设计。

微服务通信方式:

1.         同步:RPC,REST等

2.         异步:消息队列。要考虑消息可靠传输、高性能,以及编程模型的变化等。

消息队列中间件如何选型

1.协议:AMQP、STOMP、MQTT、私有协议等。2.消息是否需要持久化。3.吞吐量。4.高可用支持,是否单点。5.分布式扩展能力。6.消息堆积能力和重放能力。7.开发便捷,易于维护。8.社区成熟度。

 

RabbitMQ是一个实现了AMQP(高级消息队列协议)协议的消息队列中间件。RabbitMQ支持其中的最多一次和最少一次两种。网易蜂巢平台的服务架构,服务间通过RabbitMQ实现通信。

传统微服务架构

微服务通信机制

我们的核心挑战是降低复杂性并增强可扩展性:一个强劲的骨干网,用于统一资源访问和权限并改善路由和内部服务通信。

改进的微服务架构

微服务通信机制

这更像一个网络操作系统,管理和调度资源。

 

参考

 

网易蜂巢微服务架构:用RabbitMQ实现轻量级通信   www.cnblogs.com/yangxiaolan/p/5786119.html 

 微服务架构强化的实时通信  dockone.io/article/1795

 

相关文章:

  • 2021-06-15
  • 2021-06-19
  • 2022-02-18
  • 2022-12-23
  • 2022-02-25
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-01
  • 2021-12-15
  • 2021-07-20
  • 2022-12-23
  • 2022-01-10
  • 2022-12-23
  • 2021-11-30
相关资源
相似解决方案