首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何处理微服务中的公共数据

如何处理微服务中的公共数据
EN

Stack Overflow用户
提问于 2022-07-13 02:40:05
回答 1查看 191关注 0票数 0

我对微服务体系结构很陌生,并试图找出如何在服务之间进行通信。

例如,我需要在服务之间共享一些类型代码,例如设备类型代码、公司类型代码,并在ServiceA中管理这些代码。

如果用户需要在ServiceB中创建记录,并且该记录中的某些字段将引用这些代码,我想检查这些代码是否正确,是否应该通过同步方法(如gRPC )调用ServiceA?

当这些代码更改时,我还需要通过事件总线通知其他服务。在同一个架构中使用事件总线和gRPC是否合理?或者有什么更好的方法去做呢?

EN

回答 1

Stack Overflow用户

发布于 2022-07-13 12:32:17

虽然这是一个比较常见的场景,但建议围绕DDD聚合设计微服务。这样就不太可能像你现在这样处于跨服务的状态了。

话虽如此,让我们来回顾一下各种情况:

  1. 在ServiceB中创建了一个记录:我会在这里做一些修改。首先,使ServiceB成为“私有”,并防止外部客户端调用它。不要有太多的逻辑,只有最低限度。局部不变量验证)。然后创建一个“编排者”服务。这个将负责跨服务验证(例如。调用ServiceA来检查代码),并最终调用ServiceB执行写入。协调器与服务之间的通信可以通过gRPC.

进行。

  1. 代码更改:使用集成事件和主题系统(例如,Azure )。然后让Orchestrator订阅它并作出相应的反应。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72960334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档