ある特定のRDBがインストールされているデータベース
サーバーにデータのロードを行っていた際、Webからの検索が起動され、この時には、3~5分程度経ってからブラウザにタイムアウトが帰っていました。
(データのロード中なのでテーブルはロックされていた)
これは問題ではないのですが、この際Webサーバ側では
jdbcのプロセスが生き残り、データベースサーバーへの
アクセスを繰り返し続け、結局jdbcのプロセス自体が
増えつづけて、Webサーバ自体のリソースを使いきってしまうという現象が起こりました。
さらに、アクセス要求を受けつづけるデータベース自体も、データのロードが止まってしまいました。
この現象についてjdbcの設定等で回避する方法はないでしょうか?
できれば特定のExceptionが発生してWebサーバに瞬時に帰り、なおかつプロセスもデータベースサーバーに
迷惑をを掛けずに死んでいくというのが理想的なのですがこのような回避方法は可能でしょうか?
JDBCのことがわからず質問しました。
何卒よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
JDBCのプロセスとは、JDBCを使用しているサーブレットのスレッドと解釈します。
違っていたらごめんなさい。
DBコネクションプールを管理するクラスは用意していないのでしょうか?
コネクションプールの管理とは、最大接続=100等とし、同時には100台のクライアントからしか
接続を許可しない方法です。(クライアントというと語弊がありますがとりあえず・・)
このクラスはsingletonパターンで実装します。
この手法を使用すれば、最大コネクション数文しかサーブレットが起動できないように抑制できますので、
とりあえずリソースを使い切ってしまうということは防げます。
しかしこのままでは、ブラウザのタイムアウトを待つことには変わりありませんので、
>できれば特定のExceptionが発生してWebサーバに瞬時に帰り、・・・
を回避することが出来ません。
これはこのDBコネクションプールをカスタマイズすれば、
即画面にエラーを表示することも可能と思います。
カスタマイズ方法を説明するのもなんなので、この辺で失礼します。
では、頑張ってください。
参考URL:http://javadrive.tripod.co.jp/servlet/schedule/18/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- フリーソフト 色々な形式の個人情報を後で参照しやすいようWindow10で管理したいのですが、どんな方法があるの? 1 2023/04/29 16:46
- サーバー メールサーバーについて詳しい方、メールサーバーの管理業務経験のある方、教えてください。 3 2022/11/12 18:24
- JavaScript Q&Aの掲示板を作成していてヤフー知恵袋やgoo質問のように質問ごとにURLを生成したい 5 2023/08/04 01:22
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- 情報処理技術者・Microsoft認定資格 応用情報処理技術者試験のシステム利用率の計算について 2 2022/03/28 07:43
- Access(アクセス) Accessで作ったデータベースをwebで活用したい 2 2023/06/03 08:49
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- その他(学校・勉強) この中で間違ってある説明はありますか?詳しい方に教えていただきたいです。 A. 1つのプログラムが複 2 2023/07/14 01:15
- ASP・SaaS イントラネットを構築したい 2 2022/04/24 11:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バックグラウンドのプロセスの...
-
explorer.exeが異様にメモリを食う
-
プロセスのアタッチ・デタッチ...
-
Texについてです。 jpgファイル...
-
WINのタスクマネージャの強制終了
-
シェルで親プロセス終了時に子...
-
ウィンドウのタイトルからプロ...
-
Linuxでのスレッド間メッセージ...
-
C++のプログラムをバックグラウ...
-
他のアプリケーションの操作に...
-
API関数 GetExitCodeProcess
-
怪しいプロセス教えてください。
-
WebBrowserでPDF表示でのトラブル
-
Windowsでのfork方法
-
ADOでアクセスのレコードに...
-
Visual C++からpingを実行して...
-
VBでエクセルを起動し、プロ...
-
スレッド?
-
VB6.0 SHELLで起動...
-
複数同時実行時の参照先について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バックグラウンドのプロセスの...
-
explorer.exeが異様にメモリを食う
-
なぜ女性は男性が忘れたことを...
-
タスクマネージャーのプロセス...
-
プロセスのアタッチ・デタッチ...
-
非表示になったエクセルは?
-
Process.Startの戻り値を後で取得
-
C#でのbatファイル実行結果取得
-
プロセスIDからウィンドウハ...
-
c言語でプロセスIDを調べたい
-
Linuxでのスレッド間メッセージ...
-
プロセスIDの取得方法について
-
ADOでアクセスのレコードに...
-
怪しいプロセス教えてください。
-
vb.netでEXCEL起動がうまくでき...
-
別のプロセスの関数を呼び出す...
-
C++のプログラムをバックグラウ...
-
Visual C++からpingを実行して...
-
VBS(WSH)で開いたIEのウィンド...
-
IISがフリーズ
おすすめ情報