在基于事件驱动架构构建的应用程序中共享数据

问题描述

这可能是一种最佳实践问题。

在实时事件驱动架构 (EDA) 中,服务 A 为服务 B 使用的 Kafka 主题生成事件。

Service-A 通过 REST API 从银行获取对客户执行 KYC 的请求。作为请求的一部分,完整的客户数据被发送到服务 A。然后,服务 A 将此信息保存在其数据库中,并生成唯一的事件 ID 并生成如下事件。

{
"Event ID":1001,"Event Time":"20210524T08:30:00.000Z","Event CD":"PERFORM_KYC","Customer ID":"CU-1234"
}

需要对客户执行 KYC 的服务 B 使用来自 Kafka 的事件并了解需要对客户“CU-1234”执行 KYC。 这里的问题是,Service-B 获取 Service-A 可用的客户数据的最佳方式是什么?

我曾考虑过 Service-B 对 Service-A 进行 REST 调用获取数据,但对于事件驱动架构而言,这对我来说并不是一种令人信服的方法。我还考虑将客户信息作为事件的一部分传递。 还有其他方法吗?这里有什么建议可以作为一种良好的做法以及相同的优点和缺点吗?

用例的图示:

Pictorial representation of the usecase

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)