0

セッション衝突の例外がかなり多く発生しています。通常は少なくとも 1 日に 1 回ですが、展開して 2 ~ 3 回続けて取得し、その後何も取得しないこともあります。

アプリは Rails 3.2.2 と unicorn で実行され、セッションは memcached に保存されます。

例外はさまざまなコントローラーのさまざまな場所で発生し、それらに共通するものを実際に見つけることができません。何が原因でしょうか?

4

1 に答える 1

0

memcached を使用して ruby​​/rails がセッション データをどのように処理するかはわかりませんが、通常は次のような作業です。

new session    -> using command ADD
update session -> using GET with token and than the command CAS (check and set)

ハッシュの競合がある場合、セッションが既に存在するため、コマンド ADD は失敗します。別の考えられる問題は、別のプロセスが GET と CAS の間で同じセッションを更新した場合です。

于 2012-04-10T14:25:42.330 に答える