服务本身应该具备粗粒度属性,暴露仅仅需要暴露的内容。
比如微服务A实现客户信用检查和评级。微服务B需要客户信用。有两种做法
第一种是B调用A多个接口,把客户基本信息,客户交易信息,客户违约信息全部查询过来,然后自己计算客户信用。
第二种即是只需要输入客户编码,微服务A返回最早的信用评级。
对于后者就是我们常说的粗粒度接口或领域服务,服务间的交互应该以领域服务和粗粒度服务为主,避免掉完全的数据库表的CRUD类服务接口。
欢迎关注 分享SOA,微服务,DevOps平台规划和建设。
服务本身应该具备粗粒度属性,暴露仅仅需要暴露的内容。
比如微服务A实现客户信用检查和评级。微服务B需要客户信用。有两种做法
第一种是B调用A多个接口,把客户基本信息,客户交易信息,客户违约信息全部查询过来,然后自己计算客户信用。
第二种即是只需要输入客户编码,微服务A返回最早的信用评级。
对于后者就是我们常说的粗粒度接口或领域服务,服务间的交互应该以领域服务和粗粒度服务为主,避免掉完全的数据库表的CRUD类服务接口。
欢迎关注 分享SOA,微服务,DevOps平台规划和建设。
Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.