微服务入门系列

微服务的概念从 2014 年 Martin Fowler 撰文论述 后,逐渐在业界尤其是互联网行业得到广泛应用,一时间微服务成为一个非常火的名词。经过几年的应用,微服务架构的方法论和工具链都逐渐成熟,并还在不断向前发展,涌现出像 Service Mesh 这样的新的理念。然而,微服务架构的许多基本概念却越来越清晰,并未随时间变化很多。

笔者的经验是,学习一门技术,如果只在细节中实践,不跳出一定的高度体会方法论,则不能深入领会和举一反三,只知其然而不知其所以然。而学习微服务的概念也离不开这样的在一定高度上的概念介绍和总结。这里,我们挑选了当时给笔者很大帮助的 Chris Richardson 写的七篇微服务系列进行了翻译,希望能够同样帮助到想入门微服务的读者。

这七篇文章分别是:

  1. 微服务入门系列:微服务介绍
  2. 微服务入门系列:使用 API 网关
  3. 微服务入门系列:微服务架构的进程间通信
  4. 微服务入门系列:微服务架构的服务发现
  5. 微服务入门系列:基于事件驱动的数据管理
  6. 微服务入门系列:微服务的部署策略选择
  7. 微服务入门系列:单体应用的微服务重构

其中,第一篇介绍了微服务架构模式,同单体架构模式进行了对比,并讨论了微服务的优势和缺点。第二篇描述了客户端应用如何使用 API 网关作为同微服务通信的中间层。第三篇讲述了微服务之间的通信机制。第四篇描述了微服务的服务发现的原理和方式。第五篇描述了微服务架构对数据一致性带来的挑战,介绍了一种可能的方案,即事件驱动的数据管理方式。第六篇介绍了微服务架构的多种部署方式选择。最后一篇则介绍了如何从单体应用重构为微服务架构。

这几篇文章基本上涵盖了实施微服务架构所需要关注的各个主要方面,希望能给读者带来一些启发和帮助。