业务验证规则和微服务

问题描述 投票:0回答:1

我们有一个微服务架构,其中一个服务是用户服务,另一个是日历服务。我面临的问题是这样的。我们有用户,用户有产品和功能。产品只是功能包,所有这些信息都存储在用户服务中。当选择一个用户作为潜在候选人显示在日历上时,我们需要确定被选择的人是否打开了特定功能。为此,UI 查询用户服务并请求此信息,一切顺利。当我们向日历服务提交发布请求以将个人添加到日历时,我脑子里的麻烦就来了。日历服务应如何验证被选择的人是否启用了指定的功能?它是否应该直接调用用户服务并询问,这会引入耦合,但将逻辑集中在拥有数据的服务中?或者我应该利用我们的服务总线并使用事件携带的状态传输来使用户、产品和功能信息可供日历服务使用?我们有几个这样的服务,对于每个需要用户表及其所有相关产品和功能的副本的服务来说,似乎效率非常低,但这似乎是耦合度最低的路径。有什么想法或想法吗?

design-patterns architecture microservices
1个回答
0
投票

我会制作日历来查询用户服务。它是耦合的,但是当它通过用户服务的 API 时是松耦合的。如果日历服务查询用户服务的数据库,那就是紧耦合,这是不好的做法。

如果您想提高性能(如果用户不是太多),您可以实施您建议的其他解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.