Pyramid アプリケーションのセッション構成を から に切り替えていcookie
ますext:memcached
。私のアプリケーションは Heroku でホストされており、ドキュメントに従ってmemcache アドオンを構成しました。
ビーカーのドキュメントから、犬のパイル効果を防ぐにはa を指定することsession.lock_dir
が不可欠であることを理解しています。明確に言うと、ディレクトリへのファイル パスを指定する必要があります。Beaker はこれをある種のロックとして使用して、複数のクライアントがすべて同時に同じ値を設定しようとするのを防ぎます。
私には、これは悪いアーキテクチャのように思えます。memcache の主な利点の 1 つは、共有外部サービスとして機能することです。アプリケーション プロセスをディスク バウンド ロックにバインドすることは、間違ったアプローチのように思えます。
同様に、Heroku では、「dyno」ごとに 1 つのエフェメラルファイルシステムがあります (これは、プロセスごとを意味すると理解しています)。ディレクトリ パスを提供することはできますが、lock_dir
各プロセスが異なるディレクトリを使用している場合、これはドッグ パイル エフェクトから保護されますか?
次のことを行うべきかどうかわかりません。
- lock_dir を指定し、それについて心配する必要はありません
- Beaker を fork してこれにパッチを当てようとする
さらに、他の言語/フレームワークがここで使用するパターンを知りたいです。これは単なるビーカーの問題ですか、それとも他のファイルに依存しないセットアップでドッグ パイル効果が発生するのでしょうか?
前もって感謝します、
ジェームズ。