3

私のコンサルタントは、Django.session データの Redis EXCEPT を介してキャッシングを処理するかなり忙しい Django アプリケーションを引き継ぎました。利用可能な唯一の情報は、「Reverting session storage via Redis」のようなコミット メッセージです。

Redis に保存されている Django セッションをテストしましたが、これは良い修正のように思えますが、元の開発者がなぜプルしたのか疑問に思っているため、パイプラインにプッシュすることをためらっています。

私が Django のセッション ロジックを理解しているように、それは単なるキー:値ストアであり、値は関連するセッション データを含むピクルされた Python オブジェクトです。

短縮版:

Redis を使用して Django.session データを処理することの欠点は何ですか?

4

1 に答える 1

8

Redis は、セッションを SQL DB に追加する代わりに、セッションをすばやく簡単に保存する方法です (セッション テーブルのクエリにかかる時間を監視してみてください)。これは、django-toolbar app などのツールを使用すると明らかになります。

一方、問題として現れる可能性がある唯一のものは、Redis で 2 つの異なる方法で処理されているセッション データの永続性です。ニーズに合った方法を選択できます。詳細については、ドキュメントを参照してください。に加えて、クラスタリングまたはフェールオーバー Redis サーバーを作成するオプション。

速度やその他のプロジェクト関連の理由で、セッションを NoSQL DB に保存する必要がある同様の状況に遭遇しました。たまたま django-redisession アプリを使用していたので、試してみることをお勧めします。

最後に、あなたが話していたショッピング カードの問題に関して、これは Redis とはまったく関係ありません。システム構成と、さまざまなソフトウェア コンポーネントがどのように相互作用するかを確認してください。また、すべてが適切に機能し、適切に構成されていることを確認するために、実稼働サーバーでテストを行うのではなく、レプリカ サーバーでテストを行うことをお勧めします。

アップデート

ところで、Stackoverflow はセッション処理に Redis を使用します。これは、このような NoSQL DB をバックエンドとして使用するセッション管理の非常に強力な例です。

于 2013-01-16T20:32:14.880 に答える