1、分解业务问题
将业务问题分解车给你代表离散活动领域的块。这些块封装了与业务域特定
部分相关联的业务规则和数据逻辑。实际中会经常遇到跨业务领域不同部分的
一组微服务来完成整个事务的情况。通过查看数据域中那些不适合放到一起的
地方来划分一组微服务的服务边界
1-1、描述业务问题,注意描述问题的名词。在描述问题时,反复使用的同一名称通常
意味着它们是核心业务领域并且适合创建微服务
1-2、 注意动词,动词突出动作,代表问题域的自然轮廓
1-3、寻找数据内聚,将业务问题分解成离散的部分时,寻找彼此高度相关的数据。
如果在会话过程中,突起读取或更新的内容完全不同的数据,那么有可能还存在其他服务
2、建立服务粒度
2-1、开始的时候可以让微服务涉及的范围广泛点,然后重构更小的服务
2-2、关注服务如何相互交互,有助于建立问题域的粗粒度接口
2-3、随着对问题域的理解不断增长,服务的职责将随着时间的推移而改变
3、定义服务接口
3-1、拥抱REST理念
3-2、使用URI来传达意图
3-3、请求和响应使用JSON
3-4、使用HTTP状态码来传达结果
4、微服务的坏味道
4-1、服务承担过多的职责
4-2、服务跨大量表来管理数据---> 3-5个表
4-3、测试用例太多
4-4、服务彼此间严重相互依赖