2016-11-05 7 views
0

キャッシングとしてレディスを使用しています。いくつかのキーが削除され、その理由が見つからない場合がありました。私はこの通知にCONFIG SET notify-keyspace-events KEgxeのredis keyspace/keyeventを置く。私はログを記録している。しかし、私はコア・ログでも、いくつかのキーについてはこの赤いログで見つけることはできません。彼らはRDBMSにいくつかのデータを持っているので、それらのキーがRedisに来ているに違いないと確信しています。私たちは非常に多くの状態を失ってしまっています。レディスキーが自動的に削除されています

Redis infoには、100メガバイトの使用量があると言われています。データとキーを永続化する方法。

答えて

0

2考えられる理由:

  1. クライアントはRedisの
  2. への書き込みに失敗したいくつかのクライアントはこれらの行方不明のキー

を削除しますが、キーの変更についてのすべて購読しようとすることができます:CONFIG SET notify-keyspace-events AKE、およびログをこれらはログに変わって問題を突き止める。

+0

少なくとも1つのキーについては、私はそれらを見ているように、彼らがレディスであったと確信しています。 私はログに 'KEgxe'を使用しました。私はdel、expire ...のために十分であると思っていました。ロギング 'AKE'はすべてのイベントになるでしょう。とにかく、私は 'AKE'を入れて気をつけます。ありがとう。 – theGamblerRises

+0

こんにちは@for_stack、私も 'AKE'で試しましたが、ログに何も見つかりませんでした。それはちょうど悪化しています。私はいくつかの疑問を持って、マシンまたはredisが再起動されましたが、その場合、私は接続エラーを取得する必要があります。 となり、キー数やサイズに最大限の制限があるため、ポリシーはlruです。私の質問は、もしそれらの鍵がクリアされれば、キー空間通知にも入ります。 – theGamblerRises

+0

@theGamblerRiseが期限切れまたは退去した場合、通知を送信します。あなたのアプリケーションが予期せず 'flushdb'または' flushall'と呼ばれる可能性はありますか?これらのコマンドはあまりにも多くのキーに影響するため、Redisは通知を送信しません。 –

関連する問題