0

Linux 環境に Web アプリケーションがあり、CPU が 99% になることがあります。

数日かかることもあれば、数分かかることもあります。Tomcat webapp と Oracle Database で Spring と Hibernate を使用しています。

ログを確認すると、次のように表示されます。

「ConnectionManager - on_close 接続解放モードのセッションでトランザクションが完了しました。必ずセッションを閉じて JDBC リソースを解放してください!」.

そして、セッション数は 256 セッション (Apache conf で許可されている最大数) まで増加し始めます。これは、セッション数が 256 になったときに表示される行です。

「ContainerBackgroundProcessor[StandardEngine[Catalina]] ManagerBase - 1259947978384 sessioncount 256 で StandardManager セッションの期限切れを開始します」

その後、CPU は 99% になります。

助言がありますか?すべてが高く評価されます。

前もって感謝します。

ps しばらく前に、行ロックの競合に関する同様の問題がいくつかありました。そのため、Spring を採用しています。

4

2 に答える 2

1

ああ、それは恐ろしいクライアント パージの問題かもしれません。クライアント変数を使用していない場合は、オフにします。

CFAdmin > Server Settings > Client Variables > Select Default Storage Mechanism for Client Sessions set to None から選択します。

于 2009-12-04T21:38:33.930 に答える
0

ここで問題の原因を正確に知るには十分な情報がありません。役立つ情報としては、coldfusion スレッド数 (および最大数) に関する情報があります。データベースの負荷も、Web サーバーの負荷が急増した場合に意味のあるものです。この問題が発生したことで何が変わったのですか?

于 2009-12-04T03:17:14.453 に答える