首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >面向服务的体系结构:跨不同数据库的外键

面向服务的体系结构:跨不同数据库的外键
EN

Stack Overflow用户
提问于 2019-06-14 01:57:10
回答 1查看 143关注 0票数 1

我们正在实施面向服务的体系结构(SOA)。我们有每个不同的服务数据库,客户管理,订单,发货,退款。在不同数据库中的表之间维护外键关系的策略是什么(因为SQL Server中不允许跨数据库外键)?外键是否应该替换为业务API规则?

这不是微服务;其中数据库信息在每个领域中复制,而是SOA。我们不希望将所有内容都放在一个数据库中,因为不同的备份维护时间,不希望死锁/失控查询导致所有服务中断。面向服务的体系结构并不规定我们应该有一个还是多个数据库。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-14 16:35:00

您可以使用由创建者生成的Guid(UUID)作为实体的键,然后可以跨数据库和表使用该Guid来引用相关实体。

例如,当您创建一个新订单时,ui将生成该订单的Id,向创建该订单的组件发送一条消息,然后该组件将使用该orderId发布一个事件,以便其他组件可以对该订单执行相关工作,而无需访问数据库来获取该id。

讲得通?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56586137

复制
相关文章

相似问题

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