微服务，**是一组分布式开发的架构模式**。像经典的23种设计模式，也是有很多模式：

* 配置服务模式
* 注册与发现服务模式
* 日志服务模式
* 事件总线模式
* 等

微服务开发，主要做两个事情：

* 使用时，选择需要的模式组件即可。就像平时那样，需要哪个包加哪个（没必要全堆上）
* 尽量让服务可独立，服务间用事件总线交互（没有或极少 RPC 依赖）


<mark>开发演进：（按需选择到哪步，不管到哪部都可算微服务）</mark>

* 单体引入微服务模式组件（比如，配置服务）
* 不同的业务内容，拆分成多个模块。每个模块，尽量是独立的（即不依赖别的模块）
* 如果人很多，可以让各模块独立为服务。服务之间尽量用事件总线交互（如果没有集群环境，不要独立为服务）


顺带，推荐一本不错的书：
 
 <img src="	/img/7a7c4f3ead3b4d2ab30beeb35c693201.webp" width="200" />