、私は次のシナリオがあります。すべてのセッションから一部のセッションデータを消去する方法はありますか?一般的には
- がデータベース
- から製品とその関連データを取得するセッションで
- キャッシュ製品のオブジェクトの製品 'オブジェクトのphpへ
キャッシュは読み取り専用です。つまり、サイトの商品を表示している顧客です。
しかし、getProductIdsByCategory($categoryId)
のような呼び出しがあり、これらの結果のproductIdsもユーザーごとにキャッシュされ、私が読んだグローバルキャッシュは使用されません。
admin側の誰かが新しい製品を追加してそれをカテゴリに関連付けると、新しいセッションが開始されるまで、顧客は新しい製品IDをキャッシュされたgetProductIdsByCategory
に表示しません。
新しい製品を追加したときにサーバー上のALLセッションからたとえば$_SESSION['x']
を削除する方法はありますか?顧客がログインなどを失うため、すべてのセッションを破棄したくありません。
キャッシュされたproductId検索をグローバルキャッシュに移動する必要がありますか?
p.samはmemcachedなどのカスタムキャッシュを使用していません。
おかげ
これは本当に良いアイデアのようです。 30分後などにそのフラグを削除しなければならないと思いますが? –
理由がわかりません。それは過去に進んでいくばかりでなく、キャッシュされたデータを最近入手したセッションはそれに煩わされることはありません。 – chaos
あなたはそうです、私はこれを試してみるつもりです。ありがとう –