0

同じ場所にキャッシュがある Web ロールがあります。このロールには 2 つのインスタンスがあります。

キャッシュ ヒットがあっても、リクエストのターンアラウンド タイムは数秒です。分析の結果、キャッシュがデータを返すのにかかる時間は平均 1 秒であることがわかりました。ただし、IIS ログは、要求の全体的な処理に約 4 秒かかることを示しています。キャッシュからのデータ取得の前後に中間操作はありません。

ここで何が問題なのですか?問題を分析するための良い方法は何でしょうか?

4

2 に答える 2

1

価値があるのは、Azure の Redis と RESTful API のキャッシュで同様の問題が発生していたことです。

問題は、データのシリアル化であることが判明しました。

問題をデバッグするいくつかの方法:

  1. ANTS プロファイルをダウンロードし (無料試用版があります)、ワーカー ロールをローカルでプロファイリングします。
  2. ワーカー ロールのプロファイリングを有効にしてデプロイし、少し実行してから、プロファイル ファイルを Visual Studio にダウンロードします。(サーバー エクスプローラーを使用してインスタンスを検索し、ログをダウンロードできます)。
  3. Azure ツール キットをダウンロードします ( http://blogs.msdn.com/b/kwill/archive/2013/08/26/azuretools-the-diagnostic-utility-used-by-the-windows-azure-developer-support- team.aspx ) をインスタンスに追加します。ロールが使用しているメモリの量、CPU の量、ネットワーク上での動作などを確認できる Process Explorer などがあります。
  4. Azure サポートに連絡して、アプリケーションのプロファイリングを支援してもらうことができます。私たちはそれを行い、本当に素晴らしいサポートを得ました。彼らは私たちと何時間も電話で話し、コードのプロファイリングを手伝ってくれました。
于 2013-10-14T16:02:17.860 に答える