使用微服务进行compex报告

Chr*_*fer 2 report microservices

我正在开始一个新项目,并且有兴趣将其设计为微服务.我试图绕过它:

假设我有订单服务和产品服务.现在我想制作一个报告服务,它为我提供包含某个产品类别的产品的所有订单.

由于订单不了解产品,这意味着我需要获取所有订单,循环它们并获取每个订单的产品,然后返回那些匹配的产品.

这个假设是正确的还是有更高效的方法来实现微服务?

Wil*_*l C 8

在微服务体系结构中,过程是提取应用程序的用例和服务边界.在上面的问题中,至少有两个服务边界,一个用于交易,另一个用于报告.

当您有两个不同的服务边界时,典型的方法是在它们之间复制一些数据元素,例如.无论何时进行销售,数据都应发送给报告和交易服务.将数据广播到不同边界的一种可能方法是使用消息队列.复制数据允许它们进化并独立运行并变得自给自足,这是微服务的目标之一.

尽管如此,在进入微服务路线之前,您可能想要从一块巨石开始.微服务通常操作更重; 在初始申请阶段很难推断其优势.在开发单片应用程序之后,它往往更好地工作,因为更容易看到什么不起作用以及可以通过类似微服务的系统改进什么.

  • 全心全意地同意你的回答.有关monolith的更多信息,请访问:http://martinfowler.com/bliki/MonolithFirst.html (3认同)