0

我正在开发一个使用分布式事务的分布式系统,这意味着我可能有一个事务需要同时编辑多个数据库(在多个服务器上)。

在我的系统中,有一个控制器来管理分发。

我想要满足的场景是:服务器 A 想要发起一个分布式事务。参与者是服务器A和服务器B。因此服务器A向控制器发送请求以启动分布式事务。控制器打开与服务器 A 和服务器 B 的连接,并要求它们进行本地事务。服务器 A 和服务器 B 都必须回复服务器它们已准备好。然后控制器将提交发送到服务器 A 和服务器 B。

你对我能够构建这个分布式事务有什么建议吗?

4

2 回答 2

0

我想你可以用谷歌搜索两阶段提交,它是一个非常著名且有用的分布式事务协议,这是来自 wikipedia两阶段提交的 wiki

于 2013-07-22T02:45:09.817 回答
0

正如 BitHigher 所提到的,两阶段提交是您想要的。它也称为XA 事务。对于 MySQL 特定操作,请阅读.

请注意,XA 会带来其自身的复杂性,尤其是在失败的情况下。在尝试使用 XA 之前,请确保您了解所有极端情况。

于 2013-07-22T03:57:09.263 回答