协调微服务的标准模式是什么?
如果微服务只知道其自己的域,但是有数据流需要多个服务以某种方式进行交互,那该怎么办?
假设我们有这样的东西:
开票 装船 为了便于讨论,我们假设一旦订单发货,就应创建发票。
某处,有人按下了GUI中的按钮,“我做完了,让我们做吧!”在经典的整体式服务体系结构中,我想说的是,要么由ESB来处理此问题,要么,运货服务具有发票服务的知识,然后就调用它。
但是在这个勇敢的微服务新世界中,人们如何处理呢?
我确实认为这可以认为是高度基于意见的。但是它有一个具体的方面,因为微服务不应该做到这一点。因此,必须有一个“根据定义应该做什么”,这不是基于观点的。
射击。
答案 0 :(得分:1)
在处理微服务时,有多种最佳数据库实践的方法,它可能在所使用实体的域以及应用程序使用范围方面有所不同。
micor服务中数据库设计的最佳实践很少,首先列出其中的一些
1 - Private-tables-per-service – each service owns a set of tables that must only be accessed by that service
2 - Schema-per-service – each service has a database schema that’s private to that service
3 - Database-server-per-service – each service has it’s own database server.
您可以根据数据大小和数据数量来混合和匹配这些数据。
我希望您参考并浏览此页面以找到一个完美的示例。