ホームページ  >  記事  >  バックエンド開発  >  運用とメンテナンス - memcached を使用してセッションを保存すると、PHP で時折セッション損失が発生しますか?

運用とメンテナンス - memcached を使用してセッションを保存すると、PHP で時折セッション損失が発生しますか?

WBOY
WBOYオリジナル
2016-12-01 00:25:351084ブラウズ

たとえば、2 回目の ajax リクエスト中に読み取った $_SESSION 値は空の配列でしたが、一度 5 つの ajax リクエストを同時に開始しました。特定のページでリクエストが6件ある場合、特定のセッションが失われる可能性があります。解決方法を教えてください。

php.iniは以下の通りです

リーリー

実行環境は私のvagrant仮想マシンにあり、PHPとmemcaheはこの仮想マシンにインストールされています。PHPは5.6、memcacheは1.4.4です。奇妙なことに、セッションをファイルとして保存すると、セッション損失の問題が発生しません

返信内容: たとえば、2 回目の ajax リクエスト中に読み取った $_SESSION 値は空の配列でしたが、一度 5 つの ajax リクエストを同時に開始しました。特定のページでリクエストが6件ある場合、特定のセッションが失われる可能性があります。解決方法を教えてください。

php.iniは以下の通りです

リーリー

実行環境は私のvagrant仮想マシンにあり、PHPとmemcaheはこの仮想マシンにインストールされています。PHPは5.6、memcacheは1.4.4です。奇妙なことに、セッションをファイルとして保存すると、セッション損失の問題が発生しません

memcache のヒット率がそれほど低いはずはありません。memcache がいっぱいですか?それともバックグラウンドで複数のマシンが使用されており、セッションストレージに使用されるmemcacheは共有されていませんか?

具体的な問題はコードによって異なります

セッションには同時実行の一貫性の問題があります。データの書き込み時にロックし、書き込み後にロックを解放できます。こちらの説明を参照してください: http://justcoding.iteye.com/b...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。