私は2つの別々のウェブサイトとデータベースを持っています(データベースアクセスのためにLinq-To-SQLを使用するIIS 7.5、ASP.NETとSQL Server 2008)。ウェブサイトのデータベース使用を制限する
データベースに長時間実行される操作(10秒以上)が必要になることがあります。問題は、これらの操作によってsqlserverプロセスが100%CPUに達した後、他の主要な顧客のWebサイトがすぐにデータベースにアクセスできないことです。データベースへのアクセスには若干の遅延があります。
優先度が低いため、2倍または4倍またはnx倍長くかかる管理操作で問題はありません。
IISのAppPoolでCPUリミット設定を使用しようとしましたが、w3wp.exeプロセスでCPUの大部分を使用することはありません...むしろsqlservr.exeです。事前にお寄せいただきありがとうございます!
ちょうど1つのこと - 応答しないでください:長時間実行されている操作に対してSQLを最適化するか、データベース/サーバーを分離して同期するために管理用Webサイトをポイントしてから同期してください。私はすでにそれをやろうとしました。私はむしろ "このクエリを実行するがCPUの最大30%を使用する"という言い方を見つけようとしている。なぜなら、それは頑健性の面で私の問題にとって最良の解決策になるからだ。または、接続文字列で最大CPU使用率を設定することができれば、それは完璧です。 – kape123
IISリソースを制限することがデータベースに影響を及ぼすと思われる理由は何ですか? – Oded
@Oded私は、「IISでAppPoolの使用を制限しようとしました」という回答を避けるために言及しましたが、明らかにコメントでは役に立たない質問が発生する可能性があることを忘れてしまいました。申し訳ありませんが、私の悪い。 – kape123