上QQ阅读APP看书,第一时间看更新
1.3.4 服务的部署
一个简单的单体系统可能只需要将程序集群部署并配置负载均衡服务器即可,而部署一个复杂的微服务架构的系统就复杂得多。因为每一个微服务可能还涉及比较底层的组件,例如数据库、消息中间件等。微服务系统往往由数量众多的服务构成,例如Netflix公司有大约600个服务,而每个服务又有大量的实例。微服务系统需要对每个服务进行治理、监控和管理等,而每个服务有大量的配置,还需要考虑服务的启动顺序和启动时机等。
部署微服务系统,需要开发人员或者运维人员对微服务系统有足够强的控制力。随着云计算和云服务器的发展,部署微服务系统并不是一件难事,例如使用PaaS系统、使用Docker编排等。这就是人们往往提到微服务,就会想到Docker和DevOps的原因。其中,微服务是核心;Docker为容器技术,是微服务最佳部署的容器;DevOps是一种部署手段或理念。它们的关系如图1-11所示。
▲图1-11 微服务、Docker、DevOps之间的关系