【问题标题】:Microserivce on database level数据库级别的微服务
【发布时间】:2019-07-26 21:34:53
【问题描述】:

编排微服务的标准模式是什么?

如果一个微服务只知道自己的领域,但是有一个数据流需要多个服务以某种方式交互,那么该怎么做?

假设我们有这样的东西:

发票 运输 为了便于讨论,假设一旦订单发货,就应该创建发票。

在某个地方,有人在 GUI 中按下了一个按钮,“我完成了,让我们开始吧!”在经典的单体服务架构中,我会说要么有一个 ESB 处理这个,要么发货服务知道发票服务并调用它。

但是在这个勇敢的微服务新世界中,人们如何处理这个问题?

我确实知道这可以被认为是高度基于意见的。但它有一个具体的方面,因为微服务不应该做上述事情。所以必须有一个“根据定义它应该做什么”,而不是基于意见。

射击。

【问题讨论】:

标签: microservices


【解决方案1】:

在处理微服务时,有多种最佳数据库实践方式,它可能会因所使用的实体的领域以及应用程序的使用范围而有所不同。

微服务中数据库设计的最佳实践很少,首先列出其中的几个

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.

您可以根据您的数据大小和数据数量混合和匹配这些。

我希望您参考并浏览此页面以获得一个完美的示例。

Microservices Database Best practices

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-22
    • 2020-02-19
    • 2021-07-02
    • 1970-01-01
    • 2016-12-13
    • 2019-03-03
    • 2020-12-14
    相关资源
    最近更新 更多