我有一个应用程序(用nodejs编写,现在 A )应该通过ZMQ连接到另一个应用程序(用java编写,带有akka框架,现在 B )。
B 应用程序在多台服务器上复制,应用程序 A 应通过查询每个 B 实例进行选择(它应该询问加载应用程序的平均值)。
我会通过 REQ
/ REP
模式实现此机制,但我对此感到不满:
nodejs中的ZMQ A 提供带有事件处理的REQ
/ REP
模式,没有在ZMQ体系结构中定义的阻止策略。
我已经研究过其他方法(切换到axon,在 B 应用程序上引入套接字并建立套接字连接),但我会尝试用zeromq实现这个。
有什么建议吗?
答案 0 :(得分:1)
你不能用REQ / REP来寻找你想要的东西,因为那个模式严格只处理请求/回复/请求/回复消息模式,你想要的更像是请求<强>乙强> 1 /请求的乙强> 2 /答复的乙强> 1 /请求的乙第3 /答复的乙强> 2 /回复 B 3(指出,请求和回复将是异步的,而不是严格的系列)。
如果没有深入挖掘,这看起来可能非常适合DEALER / REP套接字模式。您的经销商套接字(在 A 中)将以循环方式从 B 服务器的 服务器请求信息,并且它将能够处理来自这些服务器的回复,以任何顺序进入(您只需将其作为消息的一部分,以指示收到回复的服务器)。