连接池的分配和释放,对系统性能是有很大影响的,合理的分配和释放,可以提高连接的效率,降低频繁建立连接和释放连接造成的系统开销,提高系统性能。
Tomcat中间件的日志中总是时不时出现IO异常,连接重置。
java.sql.SQLException: Io 异常: Connection reset
SQL> select count(*),username from v$session group by username;
COUNT(*) USERNAME
---------- ------------------------------
16
74 COBRA
1 SYS
由于应用和数据库在同一台服务器上,感觉网络原因不太可能,再而客户端也不可能经常出现断开服务器应用连接,感觉是连接池配置引起的, tomcat的配置文件中connection-pool的最大连接数只有80,感觉这个链接数过小,导致了连接池并发数不够,而使连接重置了。
&search;
&lizard;
jcd-alias="default"
default-connection="true"
platform="Oracle"
jdbc-level="1.0"
driver="oracle.jdbc.OracleDriver"
protocol="jdbc"
subprotocol="oracle:thin"
dbalias="@127.0.0.1:1521:benguo"
username="cobra"
password="cobra"
batch-mode="false"
>
maxActive="80"
validationQuery="" />
修改了上述连接数为120,而后没有出现IO错误,连接重置了。
这里摘要一篇连接池的文章http://tech.it168.com/jd/2007-12-13/200712130942718.shtml,对连接池机制还是分析比较清晰的
对于中间件的机制基本还处于一个小白的状态,以后需要找时间好好补补这方面的知识。
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25362835/viewspace-1059128/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25362835/viewspace-1059128/