Falcon文档中很少提到线程安全,但我仍然不确定资源响应程序(on_get()
、on_post()
等(中我自己的代码是否必须以线程安全的方式编写。
我用Gunicorn+nginx组合运行Falcon。
如果您使用线程来扩展应用程序,那么是的,您的响应程序(例如on_get()
(、接收器、中间件方法、钩子和字段转换器需要是线程安全的,因为它们可以并行调用。另请参阅:Falcon线程安全吗?
如果您的响应程序是I/O绑定的,并且您使用Gevent或Asyncio扩展应用程序(在框架的ASGI风格的情况下(,这通常不太令人担忧,但您仍然需要意识到您的响应器运行";并行地";根据所选择的并发模型。