問題タブ [azure-redis-cache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - StackExchange.Redis キャッシュからすべて/1 つの項目を削除/削除します
Azure Redis Cache Service で StackExchange.Redis クライアントを使用しています。これが私のクラスです。
更新: マークの助けを借りて、これが私の最終クラスです
現在、redis キャッシュからすべてのアイテムまたは単一のアイテムを削除する方法がわかりません。
c# - Azure Redis キャッシュに接続するための、StackExchange.Redis と組み合わせたエンタープライズ ライブラリの一時的な障害処理
現在、MS Enterprise Library 6 Transient Fault Handling アプリケーション ブロックを使用しています。RedisCacheKey
サービスの中断をシミュレートするために無効を提供しました。
一時的な障害処理
デバッグ出力の観察
StackExchange.Redis は Azure Redis キャッシュをスラッシングしていますか? 誰かが似たようなものを実装しましたか?
node.js - Azure Redis キャッシュのデータ損失?
Websocket 接続を介してデータを受信し、各メッセージを Azure Redis キャッシュにプッシュする Node.js アプリケーションがあります。メッセージの永続的な配列をダウンストリームで使用するために変数に保存し、一定の間隔でその配列をキャッシュから同期します。少し複雑ですが、後で、キャッシュに書き込むアプリケーションの半分と、キャッシュから読み取るアプリケーションの半分を分離したいと思います..
02:00 GMT 頃、Azure portal の統計に基づいて、その同期で "キャッシュ ミス" が発生し始めたようです。これは、05:00 頃に再び "キャッシュ ヒット" を取得し始めるまでの数時間続きました。
キャッシュ ミスは、05:00 頃にピークに達する CPU 使用率の急激な増加に対応しています。そして私がピークと言うとき、私はそれが 81% に達することを意味します。
したがって、05:00頃にCPUがピークに達し、その後通常に戻り、「キャッシュミス」はなくなりますが、キャッシュメモリの使用量を見ると、約37.4mbの使用から約3.85mbの使用に減少します(これは「空」状態)、およびこのアプリケーションで使用されているリストは空でした。
アプリケーションがキャッシュに対して実行している唯一の関数は LPUSH と LRANGE であり、データを削除する機能を備えたものは何もありません。また、誰かが疑問に思っている場合に備えて、CPU がメモリ使用量を増やしたときにそうではなかったので、その不正を示唆するものは何もありません。データの追加がトリミングされました。
ベーシックプランのみなので、無敵などとは思っていませんが、スタンダードプランのレプリケーション機能がなくても、完全に自分自身を一掃することはできないと思っていました-私はRedis は定期的に自身をディスクに書き込み、エラーから回復したときにそこから復元するという印象。
これらはすべて、私の質問方法です。
ここで何が起こったのか、誰か知っていますか?
これが他の人が誤って自分自身をトリガーできるものである場合、同じキャッシュを使用している他のアプリケーションで、壊滅的な失敗を引き起こした可能性のある問題に注意する必要がありますか?
スタンダード プランはこの種の問題に悩まされることはないと言う声を大歓迎します。なぜなら、私はすでにそれを分岐させており、それが正しい選択であると感じられるのは素晴らしいことだからです。
事前に多くの感謝..
caching - Azure Redis Cache への接続が非常に多いのはなぜですか?
キャッシュをクエリする単一のマシンの負荷が高いシナリオで、Azure Redis Cache を使用しています。このマシンは、およそ 1 秒間に約 20 個のアイテムを取得および設定します。昼間は増えますが、夜は減ります。
これまでのところ、問題なく動作しています。今日、「接続されたクライアント」のメトリックが非常に高いことに気付きましたが、アイテムを常に取得および設定するクライアントは 1 つしかありません。ここに私が意味するメトリックのスクリーンショットがあります:
私のコードは次のようになります。
このクラスの複数のインスタンスを作成していないので、これは問題ではありません。接続メトリックを誤解している可能性があります。それらが実際に意味するのは、キャッシュにアクセスする回数ですが、私の意見では意味がありません。任意のアイデア、または同様の問題を抱えている人はいますか?
azure - Azure の Redis Cache での一貫したタイムアウト
Azure Web サイトで Redis Cache を使用しています。キャッシュは Azure でホストされます。監視を通じてキャッシュに値を設定するときに、いくつかのタイムアウトに気付きました。そのため、ローカル サーバー キャッシュから redis の使用に移行する前に実行したいくつかの負荷テストを実行しましたが、以前のテストの実行と比較して、主に redis キャッシュへのタイムアウトが原因で、結果はかなり悪いものでした。
StackExchange.Redis ライブラリ バージョン 1.0.333 の厳密な名前のバージョンを使用しています。
キャッシュにアクセスするたびに新しい接続を作成しないように注意しました。
負荷テストは実際にはサーバーにそれほど負荷をかけておらず、結果は以前は 100% 成功していましたが、現在はタイムアウトが原因で約 50% のエラー率になっています。
キャッシュへのアクセスに使用されているコード。
stackexchange.redis - StackExchange.Redis server.Keys(pattern:"IsVerySlow*")
私はredisが初めてなので、何か間違っていると確信しています:
Azure Redis には約 16,000 個のキー/値を保存しています。
以下を使用してキー/値を記述しました
私のキーは次のようになります: "AP:201401:AZ5798BK"
次のようなルックアップを試みると:
キーを返却するのに 1 分 12 秒かかります。キーを取得すると、それらの値を取得するのに数ミリ秒かかります。キーの値を反復処理して値を返すと、同様の結果が得られます。問題を切り分けるためだけに ToArray() を実行しました。
redis-cli.exe で同じクエリを実行すると、ミリ秒単位で返されます。
このコマンドの使い方は間違っていますか?