2017-08-29 20 views
0

散発的に私は100から200のredisタイムアウト例外が発生します。私はレディス(公式のMSパッケージ経由で)でセッションを使用しているので、これらは "500s" /黄色のスクリーン・オブ・デスになります。RedisとAsp.Netのセッション状態 - 評価時のタイムアウト

アプリケーションの洞察を使用してこれらのタイムアウトを調べると、根本原因が「Eval」コマンドであることがわかりました。例外メッセージで報告されたkeyHashSlotが異なるため、私は "some"という言葉を使いました。

例外もそう

(minは100で、無料の10以上が通常あります)IOCPとワーカースレッドが利用できるレポートを、どのように私も深く潜ると、それらの試用版が出て調光している理由を理解することができますか?それらの内容(実行されたスクリプト)のためにタイムアウトしていますか?または彼らはキューにあまりにも多くの時間を無駄にしていますか?

+1

Redisクライアントでは 'MONITOR'、Luaスクリプトでは' SCRIPT DEBUG YES'を使用して検査することができます。 – Niloct

答えて

0

あなたはこれを見ましたか? https://gist.github.com/JonCole/db0e90bedeb3fc4823c2#file-diagnoserediserrors-clientside-md

特に、スレッドプールは少し絞る:https://gist.github.com/JonCole/db0e90bedeb3fc4823c2#burst-of-traffic

は、あなたのクライアントまたはスレッドプールの調整に高いCPUを経験していませんか?

+0

はい、私のスレッドプールはそのコードに合わせて監視されています...現在100に設定されていますが、負の値は非常に少なく、平均して-5/-10以下です。要求バーストにも関連していないようです... 25分以上の間に突然200エラーが発生すると、私は遅い朝を過ごしていました... – Leonardo

+0

[email protected]に電子メールを送信できますか?次の質問への回答が役に立ちます(https://gist.github.com/JonCole/132b255425268459ec95#file-supportquestionnaire-md)。この情報では、サーバー側で直面している問題があるかどうかを調べることができます。 また、受け取った200個のエラーをすべて共有できますか? –

関連する問題