1

この数か月間、私たちのウェブサイトで不可解な問題が発生しました。ADO.NET DataSets を使用して、データベースへのさまざまなクエリを実行すると、エラーが発生することがあります。最も一般的なエラーは、「制約を有効にできませんでした。1 つまたは複数の行に、null 以外、一意、または外部の値に違反する値が含まれています。 -重要な制約。」

ただし、何も変更しないとエラーが断続的に発生するため、データは実際には有効です。さらに、それに対する「修正」は、両方のWebサーバーでアプリプールをリサイクルすることです...したがって、問題が返される不良データになることはありません。これが完了すると、一度に何週間も正常に動作したり、1 日に 3 回壊れたりする可能性があります。それに一貫性がない…

また、Linq 2 SQL などの新しいデータ アクセス手段も問題なく機能しているように見えますが、現時点ではサイトが両方を使用しているため、判断するのは困難です。(すべてを L2S に移行する作業を行っていますが、残念ながら古いコンポーネントを書き直す時間があまりありません...)

それで、誰かが前にこのようなことをしたことがありますか?ロードバランシングとは何か?多分サーバーに何か問題がありますか?(すべての接続を各サーバーに順番に強制したところ、両方でエラーが発生しました。) VM での実行に何か問題があるのでしょうか?

エラー... わかりました、全体的な質問は次のとおりです。何が原因で、どうすれば修正できますか?

ああ、ウェブサイトは .NET 3.5 です...

4

1 に答える 1

0

あなたが言ったことに基づいて、これはエラー時にサーバーで発生した負荷に関連していると思います.

可能であれば、運用サーバーのように負荷分散されたステージング環境をセットアップしてください。次に、アプリの負荷テストを開始します。

また、運用サーバーに最新のサービス パック/アップデートがすべて適用されていることを確認してください。MS は、修正していることをすべて教えてくれない傾向があります。最後に、MS Connect を調べて、問題が修正されているかどうかを確認します。

アップデート:

負荷テストは、可能な限り単純にも複雑にもできます。それがすべきことは、繰り返し可能な方法でサイト上で標準的な操作を実行する一連のページを実行することです。通常、予想されるユーザーの行動に沿った、各ページの読み込み/操作間の「思考」時間をシミュレートする必要があります。

次に、一定数の同時ユーザーとしてテストを実行します。テストの実行中は、アプリの実際のパフォーマンスを把握するために、エラーとサーバーのパフォーマンス カウンターを記録する必要があります。

負荷テスト ツールへのリンクの一部をここに示します別のリストはこちらです。

余談ですが、同時ユーザー数が 5 人だけの負荷で、アプリが奇妙な動作を示し始めるのを見てきました。それは、サイトの構築方法に大きく依存します。

于 2009-06-29T14:41:50.670 に答える