我想创建一个代理服务器,它将传入的数据包从REQ
类型套接字路由到REP
群集中一台计算机上的套接字之一。我一直在阅读该指南,并且我认为适当的结构是Proxy ServerROUTER
和DEALER
Proxy Server的组合。当ROUTER
消息传递给经销商进行分配。但是,我无法弄清楚如何创建此连接方案。这是正确的架构吗?如果是这样,我如何将经销商绑定到多个地址。我设想的流程是这样的REQ->ROUTER|DEALER->[REP, REP, ...]
,其中只有一个REP
套接字可以处理单个请求。
ZeroMQ只是某些通信行为模式的抽象层,因此尽管类似套接字的术语听起来确实类似于以前阅读/使用的术语,但是ZeroMQ世界与许多观点相去甚远。
这种非常形式化的方式允许ZeroMQ形式通信模式按比例增长,以更高阶的模式进行组装(用于负载平衡,用于容错,用于性能缩放)。掌握了这种思维方式,您便会忽略数据包,线程同步问题,I / O轮询,而将精力集中在基于高抽象的设计上-在行为上-而不是在底层细节上。这使您的设计无需重新发明轮子,而且功能非常强大,因为您可以针对问题领域的任务重新使用高度专业的工具。
这就是说,你DEALER
-node(实际上是ZMQsocket接入节点,具有的行为称为“ DEALER
”类似于它的队列/缓冲式的,它的循环调度,它的送出及预期应答程序模型)可.bind()
到多个-s,并且这些“服务点”也可以在不同的-es上操作-一个工作,另一个工作,如果这对您的设计体系结构有意义-ZeroMQ使您能够从所有“不完整和危险的”中透明地使用此抽象较低级别的坚韧不拔。localhost
address:port
TransportClass
tcp://
inproc://
原则上,其中有益的,可以扭转.bind()
和.connect()
从DEALER
所述各自的公知的目标地址REP
的实体。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句