什么是前夕的首选生产设置

时间:2015-11-26 08:41:53

标签: eve

我正在为生产设置一个Eve实例,并想知道什么是Eve的“首选生产设置” - 如果有这样的话。 uWSGI似乎很好用。 Gunicorn适用于标准的Flask - 但对于Eve来说并不那么容易,因为Eve隐含导入了“settings.py”。 建议或推荐?

1 个答案:

答案 0 :(得分:6)

Tornado在Eve和Flask中非常受欢迎。因为它是非阻塞的并且使用epoll,它可以处理数千个同时站立的连接,这意味着它是实时Web服务的理想选择。将此服务与Flask集成非常简单(source)。

因此,假设您有用于启动REST API的平均run.py脚本:

from eve import Eve
app = Eve()

# custom stuff here

if __name__ == '__main__':
    app.run() 

然后你可以有一个run-production.py这样的脚本:

from tornado.wsgi import WSGIContainer
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop

from run import app

http_server = HTTPServer(WSGIContainer(app))
http_server.listen(5000)
IOLoop.instance().start()

然后,您可以在调试时启动run.py,并在投放时启动run-production.py