以前のWebLogicなら、同時接続クライアント数が決まったら、実行スレッド数をとりあえずその半分、接続プール数をとりあえずスレッド数と同じ数か半分にして負荷掛けて計測。接続待ち状態のスレッドが居なければまぁプール数はOK。負荷中でもアイドルスレッドが何十も居る場合はスレッド数減らし、アイドルスレッド0だけどペンディングリクエストが溜まる様ならペンディングリクエスト分だけスレッド増やし、それに伴い接続待ち発生をまた監視して必要なら増やすのだと思われる。
が、今のWebLogicはスレッド数は自動調整らしいので中抜きでいきなり最大同時接続数の半分をDB接続プール数、から始めてよいものだろうか?アイドルスレッド0でペンディングリクエストが100とかだったらどうするのだろう?
そしてこういうスレッド数関連の調整とJVM側のメモリ量関連の調整はどっちを先にすべきか?
…いやまぁ常識的に考えるとOOMは論外なので別として、処理が変わればGCの状態も変わるから処理を確定、すなわちスレッド数/接続数を確定してからフルGCが余り起きないように調整、か。