Python 龙卷风与阻塞码

Python 龙卷风与阻塞码,python,tornado,Python,Tornado,我正试图从CherryPy转移到我正在开发的web服务,我正在考虑的另一个选择是Tornado。现在,我的大多数请求都在后端处理,如下所示: 获取POST数据 查看缓存中是否有它(数据库访问) 如果没有,则向其他web服务发出多个HTTP请求,这可能需要几秒钟的时间,具体取决于请求的数量 我一直听说人们不应该阻挡龙卷风的主回路;我想知道上述所有代码是否都是在RequestHandler的post()方法中执行的,这是否意味着我正在阻止代码?如果是这样的话,使用tornado满足上述要求的合适

我正试图从CherryPy转移到我正在开发的web服务,我正在考虑的另一个选择是Tornado。现在,我的大多数请求都在后端处理,如下所示:

  • 获取POST数据

  • 查看缓存中是否有它(数据库访问)

  • 如果没有,则向其他web服务发出多个HTTP请求,这可能需要几秒钟的时间,具体取决于请求的数量


我一直听说人们不应该阻挡龙卷风的主回路;我想知道上述所有代码是否都是在
RequestHandler
post()
方法中执行的,这是否意味着我正在阻止代码?如果是这样的话,使用tornado满足上述要求的合适方法是什么。

tornado附带了一个异步(实际上是iirc)http客户端()。如果需要执行其他http请求,请使用该选项

数据库查找还应该使用异步客户端来完成,以避免阻塞tornado ioloop/mainloop。我知道有几个tornado定制的数据库客户端(例如)。mysql库包含在tornado发行版中