什么是微服务

早些年的服务实现和实施思路是将很多功能从开发到交付都打包成一个很大的服务单元(一般称为 Monolith),而微服务实现和实施思路则更强调功能趋向单一,服务单元小型化和微型化。

单体服务发展到一定程度之后,往往都会面临以下问题:

  1. 部署效率底下
  2. 团队协作开发成本高
  3. 系统高可用性差
  4. 线上发布变慢

所谓的服务化,就是把服务内的各个模块进行抽象,最终拆分出来,独立成一个服务进行部署。

从进程内部的调用变成了远程调用,这样单独拆分出来的模块就可以独立开发、测试、上线和运维了。