-->

龙卷风烧瓶密切观望(tornado flask close wait)

2019-09-29 07:13发布

当我做一个Web应用程序使用torado +烧瓶 ,我遇到一个问题,当我发送到我的应用程序的请求,但没有回应我,它总是等待。 当我发现这个问题,我发现,在我的服务器机器(Linux)的许多“关闭等待”。 我不知道如何解决这个问题,任何人可以帮助我吗? 这里是我使用龙卷风的代码:

#coding=utf-8
from tornado.wsgi import WSGIContainer
from tornado.httpserver import HTTPServer`enter code here`
from tornado.ioloop import IOLoop
from service import app #app is a flask in another file:app=Flask(__name__)
from config import SERVER_CONF
from appLog import logging


def startService():
    logging.info('start web,http://%s:%s/test'%(SERVER_CONF['IP'],SERVER_CONF['PORT']))
    try:
        http_server=HTTPServer(WSGIContainer(app))
        http_server.listen(SERVER_CONF['PORT'],address=SERVER_CONF['IP'])
        IOLoop.instance().start()
    except Exception as e:
        logging.error('start failed:')
        logging.error(e)


if __name__=='__main__':
    startService()

Answer 1:

我的理解是,你需要使用FallbackHandler ,在描述这个答案 。

话虽这么说,我会强烈建议不要使用此方法-龙卷风包括优秀自身microframework ,它与服务器更好的整合,在很多方面都优于烧瓶中。 如果使用瓶是非常重要的,我会建议探索不同的方式来确保并发(如后面的nginx的负载平衡器多个实例),或者甚至考虑看看中信高科 ,这是异步和非常相似的烧瓶中。



文章来源: tornado flask close wait