在开始转为微服务之前,需要注意如下要点,考虑清楚再决定要不要做微服务。
1、服务粒度
如何划分各个服务之间的职责边界。划分过粗,则服务中包含的业务过多,时间长了之后,又会变为一个复杂的单体应用。划分过细,则服务增多,又会增加整体复杂性。
2、通讯协议
各服务之间的通讯模式。是采用JSON,还是XML,还是其他。
3、接口设计
如何设计微服务对外提供的接口。
4、服务的配置管理
如何管理微服务的配置,以便在不同的环境之间移动时,不必更改应用程序代码。
5、服务之间的事件管理
如何使用事件解耦微服务之间的关系,以便最小化服务之间的硬编码依赖,提高应用程序弹性。