部署 Pyramid 应用程序

因此,您已经编写了一个很好的应用程序,并且希望将其部署到本地计算机之外。我们不打算在这里讨论缓存,但只要说在优化 Pyramid 应用程序时有很多事情需要考虑就足够了。

在高级别上,您需要在端口80(HTTP)和443(HTTPS)上公开服务器。然而,在这一层的下面是大量不同的配置,这些配置可用于从客户机获取请求、将请求发送到应用程序并返回响应。

Client <---> WSGI Server <---> Your Application

由于标准的美观,可以使用许多不同的配置来生成这个基本设置,将缓存层、负载平衡器等注入到基本工作流中。

免责声明

almost always highly dependent on the application's specific purposes. These setups have been used for many different projects in production with much success, but never verbatim.

WSGI是什么?

WSGI是 Python standard 指定服务器和应用程序之间的接口。您的 Pyramid 应用程序的入口点是实现WSGi接口的对象。因此,您的应用程序可以由支持WSGi的任何服务器提供服务。

现有许多不同的服务器实现了WSGi标准。短名单包括:

  • waitress

  • paste.httpserver

  • CherryPy

  • uWSGI

  • gevent

  • mod_wsgi

For more information on WSGI, see the WSGI home .

Special Considerations

由于Python、Web服务器或流行包的实现细节,在部署Pyramid应用程序时,某些环境和Web服务器需要特别考虑。

分叉的和线程化的服务器共享一些常见的问题和解决方案。

Forked and Threaded Servers