java - 如何在 JeroMQ 中实现主备队列作业处理系统?

标签 java sockets zeromq jeromq

使用 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/

相关文章:

java - 创建更新程序

java - 将本地jar添加到maven war项目中

javascript - 在可以读取新数据时获取事件 - chrome.socket.read API

调用 zmq_socket 返回 NULL 和 errno 14(错误地址)

java - 如何让 Spring 注入(inject)/调用 Spring 注解类的 setter?

java - 在 Vaadin 7 的 TabSheet 中延迟加载选项卡内容的策略

可以通过 telnet 访问我的服务器,但不能通过我的客户端访问

javascript - NodeJS 套接字发出返回未定义

python - ZeroMQ 2 REQ/REP 以允许嵌套对话

Azure InputEndpoints 阻止我的 TCP 端口