我们的应用在tomcat上一直运行正常,移植到weblogic9上,同样的应用会因为获取不到数据库连接的错误而崩溃,经同事研究发现原因是weblogic9默认配置提供的可用连接数太少(4)所致,可是weblogic9控制台又没有提供修改链接数的功能,经多方请教,最后找到解决方法如下:
1、修改weblogic domain的config.xml文件,在对应位置加入红色标注的两行内容:
<server>
<name>admserver</name>
<self-tuning-thread-pool-size-min>5</self-tuning-thread-pool-size-min>
<self-tuning-thread-pool-size-max>15</self-tuning-thread-pool-size-max>
...
</server>
2、在startweblogic.cmd脚本中加入一下java启动参数:
-Dweblogic.configuration.schemaValidationEnabled=false
经测试32为windows操作系统上,同样硬件条件下:weblogic9支持的最大线程数约为2900个,而tomcat6支持最大线程数约为1100多。