/ / Как да стартирате приложението Flask с Tornado - python, колба, торнадо

Как да стартирате приложението Flask с Tornado - питън, колба, торнадо

Бих искал да тичам едно просто приложение, написано в Flask с Tornado. Как да направя това? Искам да използвам Python 2.7 и последната версия на Tornado (4.2).

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
return "Hello World!"

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

Отговори:

11 за отговор № 1

Флаш документите се описват как да се направи това,но тя бе премахната поради бележките за ефективността по-долу. Не се нуждаете от "Торнадо", за да служите на приложението Ви за флаш, освен ако всичките ви кодове за асинхронизация вече са написани в "Торнадо".

Най- Торнадо документира за WSGI опишете това също. Те също така включват голямо предупреждение, че това вероятно е по-малко изгодно от използването на специален сървър за приложения WSGI, като UWSGI, Gunicorn или mod_wsgi.

WSGI е a синхронен интерфейс, докато модела на конкуренцията на Tornado се основава на едножично асинхронно изпълнение. Това означава, че имате приложение на WSGI с Tornado's WSGIContainer е по-малко мащабируеми отколкото да стартирате едно и също приложение на WSGI сървър с множество конци gunicorn или uwsgi, употреба WSGIContainer само когато има ползи за комбинирането на Tornado и WSGI в същия процес, който превъзхожда намалената мащабируемост.

Например, използвайте Gunicorn вместо това:

gunicorn -w 4 app:app

След всичко това, ако наистина наистина искате да използвате Tornado, можете да използвате модела, описан в документите:

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

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