我们首先给出微服务的定义,然后再对该定义给出详细的解释。
微服务就是一些可独立运行、可协同工作的小的服务。
从概念中我们可以提取三个关键词:可独立运行、可协同工作、小。这三个词高度概括了微服务的核心特性。下面我们就对这三个词作详细解释。
1.可独立运行
微服务是一个个可以独立开发、独立部署、独立运行的系统或者进程。
2.可协同工作
采用了微服务架构后,整个系统被拆分成多个微服务,这些服务之间往往不是完全独立的,在业务上存在一定的耦合,即一个服务可能需要使用另一个服务所提供的功能。这就是所谓的“可协同工作”。与单服务应用不同的是,多个微服务之间的调用时通过RPC通信来实现,而非单服务的本地调用,所以通信的成本相对要高一些,但带来的好处也是可观的。
3.小而美
微服务的思想是,将一个拥有复杂功能的庞大系统,按照业务功能,拆分成多个相互独立的子系统,这些子系统则被称为“微服务”。每个微服务只承担某一项职责,从而相对于单服务应用来说,微服务的体积是“小”的。小也就意味着每个服务承担的职责变少,根据单一职责原则,我们在系统设计时,要尽量使得每一项服务只承担一项职责,从而实现系统的“高内聚”。
本篇给大家分享一份业内大咖纯手写的微服务笔记,从入门到落地再到进阶,最后讲到对下一代微服务体系发展方向的展望和探讨
本文档总共包括以下内容:
技术基础和平台工具易学,但架构思维和落地经验难建。一个合格的架构师除了最核心的技术理论基础之外,必须具备良好的架构视野和思维模式,以及通过技术与业务结合的落地实践所总结的行之有效的经验和方法论。