サーブレットで使用しているBeanを通常のJavaプログラムで再利用したいと考えています。
通常のJavaプログラムというのは
サーバにtelnetログインし javaコマンドで実行するプログラムを指します。
サーブレット側では、
JDBCを利用したコネクションプーリング(JavaBean)を使用しています。
通常のJavaプログラムでも、このBeanをimportして使用したいのですが、
実行時エラーとして、
Exception in thread "main" Backend start-up failed:FATAL:
Sorry, too many clients already
とエラー表示されます。
DBは postgres を使用しています。
使用するために必要な設定等わかりましたら教えてください。
コネクションプーリング(JavaBean)全文を記載したかったのですが、
字数制限に引っかかりましたので省略します。
必要あれば補足に記載します。
No.2ベストアンサー
- 回答日時:
> 通常のJavaプログラムでも、このBeanをimportして使用したいのですが
javaコマンドで実行する場合もプーリングが起こっているんですね。
では、Tomcat起動後は、コマンドラインでのpostgresへの接続は可能なのでしょうか?
> コネクションプーリングと同時接続件数とはどういう関係でしょうか?
ただ単にpostgresの同時接続数にプーリングのmax設定が合わせてあるだけだと思います。
プーリングのmax設定のほうが大きければTomcatnoログにエラーが出力されるでしょうし、小さければ上記のコマンドラインでの接続は可能だと思います。
イコールならば、ログ出力はないし、コマンドラインでの接続もエラーとなるはずです。
この回答への補足
たびたびありがとうございます。
コネクションプーリングは作成されていないときに
プーリング数として20を作成するようにしていたのですが、
javaコマンドで実行する場合は、
既にあるにも関わらず、さらに20個作成しようとして、
同時接続数(デフォルト32)を越えていたようです。
プーリング数を10個に設定しなおすことで動きましたが、
以下の疑問が残ります。
なぜサーブレット側で生成したプーリングを使用しないのか?
同じjavaプログラムを複数の端末から実行すると、同じように落ちてしまうが、回避策はないのか?
何人もがどの環境から使用しても落ちないように
コネクションプーリングを作成したのに・・・
このあたりを今後の解決としたいのですが、
何か良い方法は無いでしょうか?
ありがとうございました。
結局、プーリングのmax設定を引数とし、
サーブレット側は20件で作成し、
javaコマンド側は1件しか作成しないようにしました。
とりあえずはこれで様子を見てみます。
頻繁に越えるようであれば、同時接続件数を増やして対応します。
有難うございました。
No.1
- 回答日時:
postgresの経験がないですが・・・
このエラーって
同時接続数オーバーってことですよね?
コンテナ(tomcat等)をシャットダウンして、javaコマンドで実行したらどうなるのでしょうか?
この回答への補足
早速の回答ありがとうございます。
tomcatを停止し、
javaコマンドで実行したところ問題なく動きました。
しかし、tomcatを再起動するとまた動かなくなります。
同時接続数を増やす方法。
(コネクションプーリングと同時接続件数とはどういう関係でしょうか?)
あるいは他の方法ありましたらお教えください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java JavaでWebページ作成 7 2023/07/21 21:09
- Java マイクラjavaでForgeを入れたいのですが、インストールした.jarファイルが展開されてしまい中 1 2023/07/28 22:30
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Windows 10 数年前からWindows10 の Update ができないです。なぜですか? 7 2022/11/09 06:03
- モニター・ディスプレイ 一つのノートPC(windows)を二人で別画面(もう一つはMACのデスクトップ)で同時に別の。。。 5 2023/04/19 22:02
- C言語・C++・C# C言語 3 2022/10/04 15:07
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- Amazon Amazonの配送先住所入力の自動入力機能が作動しなくなりました。 2 2022/10/06 08:58
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MacOS:ターミナルではNPMのコ...
-
ShellExecuteの使い方について
-
staticのメモリ共有について
-
windowsのタスクスケジューラを...
-
コンパイルできるのに実行できない
-
SYSTEM関数等を用いて複数のコ...
-
ACCESSでタイトルバーを非表示...
-
cmd /c を使ったときと使わなか...
-
VB6.0 ラベルが文字化け
-
コマンドプロンプトが使えない
-
Eclipseで、プロジェクト名のと...
-
Eclipseのアンインストールの仕方
-
split関数で区切り文字がない場合
-
html上で、バッチやexeファイル...
-
SVFの設定について:クラスパス...
-
シンボルが見つかりませんとい...
-
Eclipse・プロジェクトで、フォ...
-
classファイルについて
-
Eclipse(JAVA)のデバッグで他...
-
マイクラjavaでForgeを入れたい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSでタイトルバーを非表示...
-
VBプログラムから「管理者とし...
-
ShellExecuteの使い方について
-
CloudSticky.jarが起動しない。
-
windowsのタスクスケジューラを...
-
ブレークポイントを設置してな...
-
32bitアプリから64bitアプリの...
-
staticのメモリ共有について
-
実行したらがメモ帳出て来てしまう
-
ShellExecuteでDOSコマンド実行...
-
batよりjava起動
-
C# コマンドプロンプト画面で表...
-
jarファイルをバッチで実行させ...
-
コマンドを実行してコマンドラ...
-
Tomcatのメモリー使用量が知りたい
-
windows power shell icacl
-
SYSTEM関数等を用いて複数のコ...
-
コンパイルできるのに実行できない
-
C#からバッチファイルを起動で
-
「SimpleEntry を型に解決でき...
おすすめ情報