首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Tomcat 性能監控實戰:啟動內建 Status Servlet 獲取 JVM、連接池、隊列指標

     編輯:Java 相關知識

痛點

商業服務器(WebLogic/WebSphere)自帶主控台監控 JVM 堆、線程池、連接池、請求隊列。Tomcat 輕量但無圖形主控台,壓測時「盲飛」極其危險。

解決方案:Status Servlet (Tomcat 5.0+ 內建)

  1. 訪問 https://host:port/manager/status 即可獲得實時指標。
  2. 默認 403 Forbidden,需配置用戶:
<!-- conf/tomcat-users.xml -->
<role rolename="manager"/>
<user username="servermon" password="secret" roles="manager"/>

瀏覽器輸入用戶 servermon/密碼 secret 即可看到:

  • JVM 內存(堆/非堆/GC)
  • 線程池狀態(當前/最大/忙碌/空閒)
  • 連接器請求處理統計(處理中/最大/錯誤/bytes)
  • Web 應用會話數、請求統計

進階:自動化采集

  • 腳本 curl -u servermon:secret https://host:port/manager/status?XML=true 獲取 XML 格式,接入 Zabbix/Prometheus/Grafana 做歷史趨勢與告警。
  • 或部署 Lambda Probe / PSI Probe 等第三方監控 WAR,功能更豐富(類加載器、系統屬性、數據源詳情、熱部署狀態)。

生產建議

  • 僅開放管理端口給內網/跳板機,禁用預設用戶名、強密碼、定期輪換。
  • 壓測前必驗證 Status Servlet 可訪問,建立基線指標。
  • Tomcat 7/8/9 同樣適用,路徑不變。

一行配置,讓 Tomcat 瞬間擁有商業級監控可見性。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved