【发布时间】:2021-12-08 09:24:05
【问题描述】:
我有一个多租户应用程序,后端由微服务组成。租户管理员将在 UI 上有一个首选项页面,该页面可以存储租户(即租户的所有用户)的系统首选项。
我正在考虑存储它的最佳位置是什么?
SSM 还是 Dynamo?对于这个用例有什么权衡吗?
我们有一个租户微服务,或者我们可以创建一个系统偏好微服务来存储偏好。我试图避免所有跨服务通信,因此每个租户的用户将在登录时获得所有首选项并将它们发送回标题中。我们应该继续将首选项存储在租户数据库中还是系统首选项微服务是要走的路?
【问题讨论】:
-
进展如何?还不清楚你能做什么?
-
是的,到目前为止,我对@Marcin 的任何解决方案都不太满意。我已经缩小了我想将它保留在 DDB 中的范围(很可能),但它要么导致我从另一个调用微服务或引入共享数据库,我真的不喜欢任何一种方式。这不是我希望拥有整个微服务或从另一个微服务进行同步调用的大量信息。
-
我可能愿意做的可能是创建一个没有自己的数据库的微服务,但只将事件推送到 5-6 个不同的服务,这些服务将各自的偏好存储在他们的数据库中。当需要获取它们时,我可以从每个微服务进行 5-8 次调用,你觉得呢? @Marcin
-
如果你的微服务失败了,那么如果没有外部数据库,所有用户数据都会丢失?
-
@SKhurana 同意了。正如你所提到的,我正在考虑创建另一个微服务,但除了 Marcin 所指出的之外,该微服务的延迟延迟是另一个问题。也许 DynamoDB 是最快、最便宜的方式
标签: amazon-web-services amazon-dynamodb microservices aws-ssm