我有一个关于在zookeeper集群中实现两阶段提交协议以协调多个客户端连接之间的某些事务的问题。现在我有以下想法:
C
注册事务节点/app/tx
/app/tx/%d (Ni)
Ni
Ni
关于新事务tx
Ni
检查其节点是否已创建Ni
将事务设置为prepare()/abort()C
接收所有参与方的结果并决定中止/继续N
我通知C
确认/失败C
决定中止提交C
通知所有人结果。在tx
已提交但我不确定这是不是一个正确的方向?我不知道如何用python-kazoo或任何其他语言(Java)实现这一点?如果你能帮我提供代码片段或者修正我的算法就好了? 另外,如何扩展这个协议来实现动物园管理员之间的通信?比方说,我们维护多个不同的zookeeper集群,这些集群被包装到区域或任何其他抽象实体中,我们希望使用两阶段提交在特定区域上执行这种显式事务?在
基于2PC using Zk的算法的一个重要调整是
相关问题 更多 >
编程相关推荐