使用 ZeroMQ .Context
和 .Socket
实例,我能够推送/拉取消息
例如,在我的代码下面,用于类似设置的队列:
ZMQ.Context context = ZMQ.context(1);
// Socket to send messages on
ZMQ.Socket sender = context.socket(ZMQ.PUSH);
sender.bind("tcp://*:5557");
// Send messages
sender.send("0", 0);
ZMQ.Socket receiver = context.socket(ZMQ.PULL);
receiver.connect("tcp://localhost:5557");
// receive messages
String string = new String(receiver.recv(0)).trim();
我的问题是:
Q1:如何实现队列的主备模式?
我的意思是会有 2 个队列,为一个主机和端口创建,如果一个队列( Activity )发生故障,另一个(即备用)队列将立即启动以监听/拉取消息。
实现它的任何示例或指南都会更有帮助。
Q2:是否有内置类来完成此类任务?
最佳答案
你可以实现某种 binary start pattern .您的队列需要一个发现服务(在另一对套接字上)来了解彼此的状态。如果我没记错的话,没有标准功能可以创建这样的队列。
关于java - 如何在 JeroMQ 中实现主备队列作业处理系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40909865/