【发布时间】:2012-09-02 22:30:08
【问题描述】:
我的 Tornado Web 服务器有以下用例:
根据 POST 请求,可以向服务器创建条目,这些条目不会被持久化到文件或数据库中。根据 GET 请求,可以启动或终止进程。
因此,我需要在 RequestHandler 实现中的不同请求之间共享数据。这样做的正常方法是什么?
我无法将数据保存到 self,例如 self.entry = "..."。在另一个请求中,数据不再存在。
我发现的唯一可行的解决方案是将其存储在应用程序对象中:
application = web.Application([
(r'.*', MainHandler,
])
和
def get(self):
# ...
self.application.entry = "..."
这是正确的方法吗?另外这里的同步呢,我的意思是这意味着访问共享数据。
【问题讨论】: