JRun 4 を実行していますが、頻繁にクラッシュが発生します。問題の原因を理解しようとしており、メトリック ログを有効にするために jrun.xml ファイルを変更しました。
私が見ているのはこれです...
01/06 15:07:27 metrics Web threads (busy/total/delayed): 2/100/0 Sessions: 0 Total Memory=70720 Free=7464
01/06 15:08:27 metrics Web threads (busy/total/delayed): 1/100/0 Sessions: 0 Total Memory=66944 Free=9199
01/06 15:09:27 metrics Web threads (busy/total/delayed): 3/100/0 Sessions: 0 Total Memory=67456 Free=9644
01/06 15:10:27 metrics Web threads (busy/total/delayed): 3/100/0 Sessions: 0 Total Memory=63360 Free=8368
私が読んでいる本 (Adobe Coldfusion Anthology、Apress) では、「ビジー」の数字は MB 単位の空きメモリであると説明されています。Adobe のドキュメントでは「現在実行中のスレッド」と書かれています。どちらが正しいのでしょうか?
また、これらすべては平均?
私が正しく理解していれば、合計 100 個のスレッドがあり、そのうち 3 個はビジー状態です。では、ビジー状態でも遅延状態でもない場合、残りの 97 個のスレッドは何をしているのでしょうか?
答え1
ColdFusion の安定性の問題をデバッグするには、FusionReactor や SeeFusion などのツールを使用することをお勧めします。私の経験では、クラッシュはメモリ割り当ての問題 (不足、多すぎる、ガベージ コレクターの設定など) に関連しています。また、アプリケーションが実行している内容や、ColdFusion で実行するように設定されている同時スレッドの数によっても異なります。上記のツールを使用すると、サーバーをリアルタイムで視覚的に詳しく把握できるため、問題を追跡できます。
答え2
スレッド ビジー/合計/遅延は、現在 Jrun によって処理されているスレッドの数です。
Busy は、現在実行中のプロセスです。Delayed は、スレッド キューでスワップ アウトされ、現在実行を待機しているスレッドです (通常は、アクティブなスレッドが利用できないことが原因です)。アクティブなスレッドが解放されるか、構成で設定されたタイムアウト値に達するまで、待機状態が続きます。
答え3
この本「Adobe Coldfusion Anthology」については知りませんでしたが、Jrun の管理ドキュメント (CD または Web で入手可能) のメトリクスは非常に明確でした。
JDBC カウンターも含めることをお勧めします。非常に便利です。
最後に、記憶を知ることです。全体だけでなく、さまざまなタイプ、アーキテクチャの限界などを知ることです...
Windows のリソース モニターからの CPU、ページ/秒などのメトリックが役立つことがよくあります。
私たちは約 5 年間 jrun4 を運用してきましたが、システムというよりも開発領域で大量の問題が発生し、その原因は私たちのせいであることも多々ありました。
最後にお勧めしたいのは、jrun4 には「クラスター」機能があり、ボトルネックが見つかった場合は、フロント IIS とバックエンドに 2 つまたは 3 つの Jrun4 を配置できるということです。これは非常に効果的です。
それが役に立てば幸い。