linux線上環境jetty調優方案
前段時間開發了一個資料上報的系統,
1、記憶體調優:
開啟jetty根目錄下的bin/jetty.sh檔案,修改配置項JAVA_OPTIONS的配置即可。我這裡使用的是如下配置,大家可以進行參考:
JAVA_OPTIONS="-server -Xms6G -Xmx6G -Xmn2G -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=5 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:+CMSClassUnloadingEnabled -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=85 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:-ReduceInitialCardMarks -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
我這裡設定的最大記憶體佔用為6G,最小記憶體佔用2G。注意:這個值需要你根據自己的伺服器記憶體來進行配置。
2、配置jetty的執行緒池:
當系統的記憶體和效能夠用的時候,我們可以修改jetty的最大執行緒數來實現提高單臺系統的最高併發,可以修改etc/jetty.xml配置檔案中的如下值:這裡配置的最大執行緒數為600
3、觀察線上環境效能圖:
---我這裡使用的是javamelody外掛來進行分析
記憶體圖:透過檢視該圖的記憶體最大值為6G,也就是我們配置的最大值,且自動進行垃圾回收後,佔用記憶體值下降明顯
-
活動執行緒圖:從這裡的活動執行緒圖可以看到,最大值為我們配置的600,當然,這裡的活動執行緒數為600並不代表能抗住的併發只有600,這裡出現了活動執行緒數佔用如此之多,只是因為有一次出現了kafka被運維配置錯誤的情況...正常情況下,併發值再高,活動執行緒數一般是穩定在100之下的。
-
請求統計圖:這裡是實時統計請求數的圖,因為使用者量還不是很多,這裡的最高值也只有20k+,內網測試500M記憶體200個執行緒併發能達到70K+,因為線上伺服器沒敢輕易嘗試。
-
請求併發量:這個值我一直在糾結,該系統的內網用200個執行緒壓,吞吐量為1k+/s左右,但是江湖傳聞,可以使用netstat命令來檢視某個埠的併發量,故則測試環境同樣用200個執行緒壓,使用netstat命令檢視併發結果如下:8K+,內網..,這個系統能抗住的併發量我到底還是沒有辦法壓出來,只知道吞吐量為1800/s左右。當然,如果扛不住就分散式,至少現在沒有出現扛不住的情況,只是希望好心人能告訴我如何測試系統能抗住的最高併發的方式,感謝!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4369/viewspace-2815097/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Unix環境下的Oracle調優Oracle
- CentOS上JETTY環境的配置安裝CentOSJetty
- 企業環境下MySQL5.5調優MySql
- Unix環境下的Oracle調優原則Oracle
- 線上環境 Linux 系統呼叫追蹤Linux
- 淺談AIX環境下的Java效能調優AIJava
- Kafka 線上效能調優Kafka
- 微前端中實現沙箱環境的方案調研前端
- Xcode配置測試環境和線上環境XCode
- 神通資料庫測試環境調優過程資料庫
- PHP 線上開發環境PHP開發環境
- oracle&linux環境vm相關的調整OracleLinux
- laravel線上環境表單驗證重定向問題解決方案Laravel
- 環境變數{Linux環境(也稱為Shell環境)}(轉)變數Linux
- HBase 核心元件協調及RegionServer JVM引數調優-OLAP商業環境實戰元件ServerJVM
- Linux徹底清理Oracle 11g RAC環境方案LinuxOracle
- Python 環境下的自動化機器學習超引數調優Python機器學習
- 生產環境sql語句調優實戰第二篇SQL
- 生產環境sql語句調優實戰第三篇SQL
- 生產環境sql語句調優實戰第四篇SQL
- 生產環境sql語句調優實戰第五篇SQL
- 生產環境sql語句調優實戰第六篇SQL
- 生產環境sql語句調優實戰第八篇SQL
- 生產環境sql語句調優實戰第九篇SQL
- YARN線上動態資源調優Yarn
- Linux環境配置Linux
- linux環境顯示全部環境變數Linux變數
- 有贊環境解決方案
- 【LINUX】linux ulimit調優LinuxMIT
- 生產環境sql語句調優實戰第七篇SQL
- 生產環境sql語句調優實戰第十篇SQL
- 從零搭建 Node.js 線上環境Node.js
- k8s線上測試環境K8S
- (一)Linux環境的學習環境的搭建Linux
- Linux搭建Java環境LinuxJava
- 【Linux】環境變數!!!Linux變數
- Linux的shell環境Linux
- linux環境ftp搭建LinuxFTP