posted 22 years ago
Also, you need to balance the number of listen threads versus execute threads. If you have too many listen threads, the server may be actively handling 100 requests but only have enough execute threads to act on 15 of them, resulting in the other 85 sitting around waiting. If you have too many execute threads, you may have 100 outstanding requests and 100 execute threads, but only a few of those requests are being processed because you only have 15 listen threads.
The ration of listen threads to execute threads is controlled by the ThreadPoolPercentSocketReaders parameter, which defaults to 33(%).
As has been mentioned already, you'll need to experiment a little to optimize this. In general, you don't want an outrageous number of threads, because then there will be too much overhead. As well, most people have better luck running a separate WebLogic instance for every 1-2 CPUs in the system, rather than running a single instance with loads of threads on a many-CPU system.
<a href="http://www.javaranch.com/bookpromo.jsp" target="_blank" rel="nofollow">WebLogic Book Giveaway</a> 2/25-2/27