2016-10-20 19 views
0

Windows Server 2012 R2でSqlserver express 2008(64bit)を56GB RAMで使用しています。SQLServer高性能RAMのパフォーマンスが遅い

IIS 8.5 64ビットでホストされているc#asp.net MVC5で書かれたWebアプリケーションがあります。 このアプリケーションは、他の32ビットの依存関係を持つため、32ビットアプリケーションとしてホストされています。

データの取得が非常に遅くなる、つまり、5レコードを返す単純なクエリを実行するのに約1.2分かかります。

  • 6:私は28ギガバイト(それが重要ならば、そのExpress Editionの私はいけないので、それは問題ないと思います)

    は、リソースモニタは、次の統計情報を表示するには、SQL最大8GBサーバのメモリ最小サーバーとmaxを設定しています、82,000仮想メモリ

  • 4,27,000の作業仮想メモリ
  • 1467000共有可能メモリ
  • 82000プライベートメモリ

問題は、全く同じ設定が8GB RAMの同じ設定で完璧に動作することです。


私は2つの質問があります。

  1. が、これは場合SQLserverボトルネックになるだろうか?はいの場合は、トラブルシューティングを進めるにはどうすればいいですか?

  2. sqlserverの64ビットインスタンスに接続する32ビットアプリケーションにパフォーマンスの問題がありますか?私は代わりに32ビットのインスタンスを試すべきですか?

+0

、あなたが含まれていることに役立つだろう:関係する表の遅い、テーブル定義(複数可)を実行しているクエリ、テーブルの上に作成されたインデックス(s)は、実行計画をクエリのあなたの統計情報が古くなっていることもあります(それらを再構築する方法をオンラインで見てください)、あるいはあなたのインデックスが断片化しすぎているかもしれません(それらを再構築する方法をオンラインで見てください)。 –

答えて

1

これは、すべてのSQL DBAが存在するところです。ユーザーが私のアプリケーション/クエリが遅いと言っているときです。メモリはあなたの問題ではないでしょう。多くの場合、クエリ上のパラメータスニッフィング、テーブルの索引付け不良またはその他の問題があります。これをトラブルシューティングする方法はたくさんあります。何が起きているのかを知るために実行するスクリプトがたくさんあります。私はGrentubから入手可能なBrent Ozarのツールキットを推奨し、SP_BlitzFirst、SP_BlitzIndex、およびsp_BlitzCacheを使用します。このような場合には

Brent Ozar's First Responder Kit

関連する問題