Windows 龙卷风+莫莫科

Windows 龙卷风+莫莫科,windows,tornado,momoko,Windows,Tornado,Momoko,我正在MS Windows和momoko上使用最新的Tornado 4.0.2。 当我同时运行多个请求时,我希望每个请求的执行时间不超过10秒,但事实并非如此。 这个代码怎么了 import tornado.ioloop from tornado.web import RequestHandler, Application, url from tornado.gen import coroutine import tornado.httpserver import momoko class

我正在MS Windows和momoko上使用最新的Tornado 4.0.2。 当我同时运行多个请求时,我希望每个请求的执行时间不超过10秒,但事实并非如此。 这个代码怎么了

import tornado.ioloop
from tornado.web import RequestHandler, Application, url
from tornado.gen import coroutine
import tornado.httpserver
import momoko


class BaseHandler(RequestHandler):
    @property
    def db(self):
        return self.application.db

class HelloHandler(BaseHandler):
    @coroutine
    def get(self):
        try:
            cursor = yield momoko.Op(self.db.execute, 'SELECT pg_sleep(%s);', (10,))
            self.write('Query results: %s<br>\n' % cursor.fetchall())
        except Exception as error:
            self.write(str(error))

        self.finish()

def make_app():
    return Application([
    url(r"/", HelloHandler)
    ])


if __name__ == '__main__':
    app = make_app()

    app.db = momoko.Pool(
    dsn='dbname=sandbox user=postgres password=postgres '
        'host=localhost port=5432', size=4)
    http_server = tornado.httpserver.HTTPServer(app)
    http_server.listen(8888, 'localhost')
    tornado.ioloop.IOLoop.instance().start()

为什么要等到第一个请求结束?

你好,新手。如果你想得到社区的帮助,我想你的问题应该更具体一点。你好,博尼法西奥。你什么意思?我认为你应该缩小你的问题范围。例如,确定你的瓶颈在哪里,描述你的期望和正在发生的事情。这很简单。正如我在上面所写的,我期望一些请求将同时执行,实际上,它们是按顺序执行的。第一次请求延迟是10秒,第二次请求延迟是10+N秒,等等,我有点进步。仅当向同一URL发出请求时,才会发生此行为。即同步执行对完全相同URL的请求。