TornadoWebサーバーのユースケースは次のとおりです。
POST要求時に、サーバーにエントリを作成できます。エントリは、ファイルまたはデータベースに永続化されません。GETリクエストに応じて、プロセスを開始または終了できます。
RequestHandler
したがって、実装では異なるリクエスト間でデータを共有する必要があります。そうするための通常の方法は何ですか?
self
たとえば、データをに保存するのに苦労しましself.entry = "..."
た。別のリクエストでは、データはもう存在しませんでした。
私が見つけた唯一の実用的な解決策は、それをアプリケーションオブジェクトに保存することです。
application = web.Application([
(r'.*', MainHandler,
])
と
def get(self):
# ...
self.application.entry = "..."
それは正しい方法ですか?また、ここでの同期については、これは共有データへのアクセスを意味します。