我正在考虑使用mongrel2来处理服务的Web请求。对于后端,我想使用任务场模式,使用C绑定到zeromq。
在阅读mongrel2手册后,我不知道如何实现这一点,因为后端处理程序PULLS来自mongrel2的消息,并使用ZMQ_PUB套接字将消息发送到mongrel2。
我想将处理程序中的消息转发到后端的任务场,然后在处理程序中接收响应,然后将响应发布到mongrel2。 zeromq客户端是否可以绑定到几个(2)输入和几个(2)输出?
FWIW,我在ANSI C中实现它。
答案 0 :(得分:3)
我觉得你要找的是接近zeromq指南中的呼吸机模式轮廓:http://zguide.zeromq.org/page:all#Divide-and-Conquer。
图中的呼吸机和接收器都位于您的Web服务中(您可以在应用程序中创建多个套接字)。
PUSH和PULL套接字可以将数据推/拉到任意数量的下游/上游套接字,因此您的Web服务只需要两个套接字就可以容纳任意数量的工作者。