2011-11-17 176 views
2

我正在开发Web服务。我的系统是这样的:分离的Web服务器和应用程序服务器?

客户端请求 - > Web服务器(Apache的) - >应用程序服务器(Python)的

我用WSGI的Apache和Python之间的通信。

我的问题如何分离Web服务器和应用程序服务器。目前,我必须在同一台服务器上运行它们。

回答

3

WSGI不是一个网络协议,因此即使它只充当WSGI容器,您也必须在应用程序前运行Web服务器。使用mod_proxy从主Web服务器到WSGI容器的代理连接。

1

+1对于Ignacio的回答。

另请注意,从服务器分离WSGI应用程序将失去WSGI的主要优点之一(服务器直接调用wsgi应用程序)。此外,WSGI应用程序还有一个响应回调函数,用于直接与服务器进行通信。

而不是将服务器与应用程序分离,是否考虑让它们配对在一起,并使用nginx和/或haproxy将它们复制到多个服务器/应用程序对中以分离和负载均衡请求?我相信这是加载问题的常用解决方案。