本文说明了微服务架构的部署模式之一:每个主机一个服务实例。

场景

已经通过微服务架构的分解模式(参考按业务领域分解模式划分微服务),将整个应用程序划分为多个独立的微服务。

目标

  • 每个服务由多个服务实例组成,用于提高吞吐量和可用性。
  • 服务必须可独立部署和扩展。
  • 服务实例需要彼此隔离。
  • 需要能够快速构建和部署服务。
  • 需要能够约束服务所消耗的资源(CPU和内存)。
  • 需要监视每个服务实例的性能和行为。
  • 部署必须是可靠的。
  • 部署必须是经济高效的。

方法

在同一个主机(通常是虚拟机)上运行一个服务的一个实例。

优点

  • 通过增加实例数量可以直接扩展服务。
  • VM封装了构建服务的技术细节,所有服务都以完全相同的方式启动和停止。
  • 每个服务实例都是隔离的。
  • VM可以针对服务实例消耗的CPU和内存做精确的限制。
  • 虚拟机管理工具能提供成熟且功能丰富的基础架构。

缺点

  • 资源利用率较低。

相关模式

版权声明:本文为yorkwu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/yorkwu/p/9498225.html