基本原理
软件是实现业务价值的。
理想的微服务,应该是能独立完成一个或一组业务能力。也最好是由一个独立团队或个人维护。
此外再考虑质量维度(吞吐量,可靠性,安全性)。
业务功能 是划分主要维度
高内聚,低耦合。
核心裕,支撑域,通用域,注意限界上下文。
business 微服务依赖 domain微服务, 反之不合理。
CCP原则
共同闭包:包中所有的类应该是同类变化的一个集合,如果要改包,要调整的类都应该包含在包内。
反例:2个微服务相互频繁调用,同步数据。
分布式单体
一个人要维护10个微服务,那大概率就只是一个分布式单体了