歡迎您光臨本站 註冊首頁
小知識  >  Tomcat >

Tomcat連接池得到當前連接數

admin @ 2017-11-21 reply:0
←手機掃碼閱讀

關於如何配置Tomcat資料庫連接池,網上已有太多文章了。可是找不到一篇文章能告訴我,怎麼能得到Tomcat連接池的當前連接數。如果想要監視Tomcat的運行狀況,這是一個重要參數。所以我花了半天的時間,專門來研究這個問題。

先是看了Tomcat的相關源碼,得到它用了jakarta commons-dbcp這個包,又下載了commons-dbcp這個包的源嗎。終於在BasicDataSource找到getNumActive方法,這就是我想要的。

Context initCtx = new InitialContext();
BasicDataSource bds = (BasicDataSource)initCtx.lookup("java:comp/env/jdbc/afunms");
initCtx.close();
bds.getConnection();
System.out.println("當前連接數=" + bds.getNumActive());

隨時getConnection()的增加,這個numActive也會增多(如果不關閉connection的話)。當numActive>maxActive(這個maxActive在xml文件中)時,程序就再不能連上DB了。這就是我以前的程序為什麼會出錯的原因,哈哈。

註:在連接池配置文件.xml中要寫明
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>

[admin via ] Tomcat連接池得到當前連接數已經有543次圍觀

http://coctec.com/room/show-106.html