Jay*_*Jay 3 architecture hadoop distributed-computing apache-zookeeper
这是我的要求.
我在群集中有一堆机器(比如4-A,B,C,D).
A的工作是轮询数据库以获取更新(因此,A可以在订单表中查找新订单).
一旦A接收到更新,它就会验证B,C,D中哪一个相对空闲(负载均衡是我猜的正确的单词).然后它命令B,C,D中的一个开始处理订单.A保持在B/C/D上处理订单的轨道.
B,C,D就像是奴隶 - 他们只接收来自A的更新并在完成订单处理时通知A. 如果A发生故障(由于网络问题或其他原因),B,C,D中的一个将成为主服务器并执行A的职责A.关于正在运行的作业的元数据也会定期备份到备份节点E.所以当B/C/D成为新的主人,它将从E读取元数据.
我知道这听起来有点像hadoop,但订单处理不适合map reduce模型,所以我正在寻找利用ZooKeeper等其他框架的方法,它可以帮助A,B,C和D之间的协调.
ZooKeeper适合吗?
Mai*_*kov 11
Zookeeper是协调问题的自然选择.
以下配方可用于您的用例.
A的工作是轮询数据库以获取更新(因此,A可以在订单表中查找新订单).一旦A接收到更新,它就会验证B,C,D中哪一个相对空闲(负载均衡是我猜的正确的单词).然后它命令B,C,D中的一个开始处理订单.A保持在B/C/D上处理订单的轨道.
分布式队列可用于任务调度.
B,C,D就像是奴隶 - 他们只接收来自A的更新并在完成订单处理时通知A. 如果A发生故障(由于网络问题或其他原因),B,C,D中的一个将成为主人并执行A的职责.
看起来像领导选举问题
有关正在运行的作业的元数据也会定期备份到备份节点E.
您可以使用zookeeper存储元数据.
归档时间: |
|
查看次数: |
2737 次 |
最近记录: |