エンタープライズアプリケーションでパフォーマンスの問題を攻撃しています。私のSQL Procの1つは、2 MB以上のデータ(XMLの平文)を返します。そのSPを実行するためには、DBサーバーでのみ約600ミリ秒かかる。しかし、それは私のUIで応答を得るために約30秒かかります。SQL Serverと.NETクライアント - サーバーから大量のデータを返すベストプラクティス - パフォーマンスの向上
SQLサーバー2008/.NET 4.0
注(IISは、Windowsアプリケーションをホストされている):前のパフォーマンスの繰り返しで - あまりにも多くのDB呼び出しが一緒にこん棒、したがって、多くのDBコールをaviodedを。しかし、現在、データを返すのは巨大で、この問題に直面しています
ここでは、パフォーマンスを向上させるための標準または制限事項のベストプラクティスを特定します。
ここにこれを追加するという考えの下に寄せられたコメントに基づいて: -
- しかし、私はこの中には、私は現場でのサーバの接続性を持つ私の地元の場合SQLserverクエリアナライザから同じSpのコールを実行しています発見しました。 2.イントラネットではなく、インターネットを通じた米国/インド間のコミュニケーション。 3.私はdottraceツールとソースを使ってthouroughly分析しました。 4.このデータを結合するボトルネックはありません。以前は約15 Dbコールがループ内にありました(毎回のコールではKbsが小さくなりました)が、今度はクラブ付きのシングルコールになりましたが、大きなデータはMBで運ばれます。
よろしく、 Karthikeyan.G
ローカルで600msかかる場合、これは帯域幅の問題であることを示しています。しかし2MBは、些細なことではありませんが、ここではサーバーとクライアントの間の接続は何ですか? –
2mbも最近では些細なことですが、避けてはいけないと言っているわけではありませんが、LAN、無線またはDSLで20mの場合は30秒も現実的ではありません。 – TomTom
時が流れている場所を確認してください。私は真剣にあなたが間違った項目を見ていると思う。 UIバインディングのないCHeckを使用して、UIバインディングの時間を確認します。私はUIでその時間を簡単に使うと思います。 – TomTom