Web applications Mongrel2对NGINX和#x2B;ZeroMQ?
我在github上看到了这个新的项目,现在感到困惑 和NGINX+ZeroMQ之间的功能和可伸缩性有什么区别Web applications Mongrel2对NGINX和#x2B;ZeroMQ?,web-applications,nginx,webserver,mongrel2,Web Applications,Nginx,Webserver,Mongrel2,我在github上看到了这个新的项目,现在感到困惑 和NGINX+ZeroMQ之间的功能和可伸缩性有什么区别 (我之所以问这个问题,是因为我觉得Mongrel2是在NGINX不支持ZeroMQ的情况下单独创建的)我也读到了关于NGINX+ZeroMQ模块的内容,我立即发现了一个相当大的差异 ZeroMQ nginx模块使用REQ/REP套接字与后端进程通信。另一方面,mongrel2使用两个套接字。一个PUSH/PULL向下游(处理程序)发送消息,一个PUB/SUB(接收处理程序的响应)。这使得
(我之所以问这个问题,是因为我觉得Mongrel2是在NGINX不支持ZeroMQ的情况下单独创建的)我也读到了关于NGINX+ZeroMQ模块的内容,我立即发现了一个相当大的差异 ZeroMQ nginx模块使用REQ/REP套接字与后端进程通信。另一方面,mongrel2使用两个套接字。一个PUSH/PULL向下游(处理程序)发送消息,一个PUB/SUB(接收处理程序的响应)。这使得它完全异步。当mongrel2向后端处理程序发送请求时,它立即从zmq_send()调用返回,并且响应将在稍后的任何时候在另一个套接字中接收 另一个区别是mongrel2能够向多个客户端发送相同的响应。您的处理程序可以这样告诉mongrel2:“请将此响应传递给连接4、5、6和10”。Mongrel2将消息中的连接ID发送给处理程序 希望这有帮助!=) NGINX+ZeroMQ有bug。 1.它不适用于NGINX 1.5原因NGINX在执行发送到ZMQ服务器(为此它调用发送链)上游钩子之前,测试连接是否有效。它会失败,因为它有ZMQ套接字而不是TCP套接字,因为协议不同,它会说它是一个无效连接