2010-10-13 50 views
2

我已经制作了一个使用web.py的小型网络应用程序,现在我想投入生产。我不期望这会有非常高的并发使用(如果有的话,在任何给定的时间,可能有5个左右的用户)。Python webapp - 从测试转移到生产

这就是说,我不想与web.py(以及我一直用于调试的)一起提供的cherry.py服务器,因为我的应用程序的主要动机之一是学习如何正确将应用投入生产。

阅读选项 - 似乎有令人眼花缭乱的东西。 Tornoado,nginx,lighttpd等等。还有像Gunicorn的东西,我不能很好地掌握到目前为止的使用情况。

看来WSGI是要走的路 - 我想要一些适当的相对容易管理的设置,可以在EC2实例(ubuntu)上运行,也许使用nginx/wsgi。具体来说,我是否需要gunicorn(或同等学历),并且有任何人可能知道的好引见,所以我实际上可以让我的web.py代码运行,并且至少开始了解各种技术/选项的拼图。

非常感谢

回答

1

可用选项有:

  • 的apache + mod_python的
  • 的apache + mod_wsgi的
  • lighttpd的+的mod_fastcgi
  • 的lighttpd + gunicorn
  • 的nginx + gunicorn

我建议你去枪炮。

+0

感谢Anand,我一直在尝试使用Cherrypy + nginx - 但现在也会尝试使用gunicorn。 – malangi 2010-10-20 10:59:47

0

CherryPy是用于部署的相当不错的选择。这是一个很好的WSGI服务器,并且已知可用于EC2。直接将HTTP请求映射到您的python代码。我已经在Apache后面运行它,在lighttpd之后,并且本身。

0

我建议你使用Apache + modpython。即使您希望减少负载,但总能做好准备:)

此外,这是一个久经考验的设置。