好程式設計師Java學習路線分享實戰Tomcat效能最佳化
好程式設計師Java學習路線分享實戰Tomcat效能最佳化,前言,由於不同的硬體配置導致預設的tomcat配置無法達到最佳的效能,導致我們需要對tomcat的進行相應的配置調整。
T omcat記憶體最佳化
配置資訊:JAVA_OPTS=’-Xms1024m -Xmx2048m -XX: PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m’
將以上配置資訊在tomcat中的catalina.sh 中配置如下圖所示:
引數描述:
-server 啟用jdk 的 server 版;
-Xms java虛擬機器初始化時的最小記憶體;
-Xmx java虛擬機器可使用的最大記憶體;
-XX: PermSize 記憶體永久保留區域
-XX:MaxPermSize 記憶體最大永久保留區域
根據不同的配置硬體裝置可適當調整引數的大小,記憶體大、cpu核數多,可對相應的引數設定過大,反之設定適當偏小。
T omcat併發最佳化
併發最佳化主要在conf中server.xml檔案中配置。配置程式碼如下:
<Connector port="8080"
protocol="HTTP/1.1"
maxHttpHeaderSize="8192"
minProcessors="100"
maxProcessors="1000"
acceptCount="1000"
redirectPort="8443"
disableUploadTimeout="true"/>
引數說明
maxThreads 客戶請求最大執行緒數
minSpareThreads Tomcat初始化時建立的 socket 執行緒數
maxSpareThreads Tomcat聯結器的最大空閒 socket 執行緒數
enableLookups 若設為true, 則支援域名解析,可把 ip 地址解析為主機名
redirectPort 在需要基於安全通道的場合,把客戶請求轉發到基於SSL 的 redirectPort 埠
acceptAccount 監聽埠佇列最大數,滿了之後客戶請求會被拒絕(不能小於maxSpareThreads )
connectionTimeout 連線超時
minProcessors 伺服器建立時的最小處理執行緒數
maxProcessors 伺服器同時最大處理執行緒數
URIEncoding URL統一編碼
效果圖如下:
T omcat快取最佳化
快取最佳化主要在conf中server.xml檔案中配置。配置程式碼如下:
<Connector port="8080"
protocol="HTTP/1.1"
maxHttpHeaderSize="8192"
maxThreads="1000"
minSpareThreads="100"
maxSpareThreads="1000"
minProcessors="100"
maxProcessors="1000"
enableLookups="false"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout="20000"
URIEncoding="utf-8"
acceptCount="1000"
redirectPort="8443"
disableUploadTimeout="true"/>
引數說明
maxThreads 客戶請求最大執行緒數
minSpareThreads Tomcat初始化時建立的 socket 執行緒數
maxSpareThreads Tomcat聯結器的最大空閒 socket 執行緒數
enableLookups 若設為true, 則支援域名解析,可把 ip 地址解析為主機名
redirectPort 在需要基於安全通道的場合,把客戶請求轉發到基於SSL 的 redirectPort 埠
acceptAccount 監聽埠佇列最大數,滿了之後客戶請求會被拒絕(不能小於maxSpareThreads )
connectionTimeout 連線超時
minProcessors 伺服器建立時的最小處理執行緒數
maxProcessors 伺服器同時最大處理執行緒數
URIEncoding URL統一編碼
compression 開啟壓縮功能
compressionMinSize 啟用壓縮的輸出內容大小,這裡面預設為2KB
compressableMimeType 壓縮型別
connectionTimeout 定義建立客戶連線超時的時間. 如果為 -1, 表示不限制建立客戶連線的時間
效果圖如下:
總結
配置了記憶體、併發、快取最佳化後,同配置硬體裝置可提高多倍有效訪問率。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2654750/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師Java學習路線分享SpringCloud程式設計師JavaSpringGCCloud
- 好程式設計師Java學習路線分享氣泡排序及最佳化程式設計師Java排序
- 好程式設計師Java學習路線分享mybatis對映程式設計師JavaMyBatis
- 好程式設計師Java學習路線分享MyBatis之執行緒最佳化程式設計師JavaMyBatis執行緒
- 好程式設計師Java學習路線分享Java框架怎麼搭建程式設計師Java框架
- 好程式設計師Java學習路線分享Redis快速入門程式設計師JavaRedis
- 好程式設計師Java學習路線分享JVM相關概念程式設計師JavaJVM
- 好程式設計師Java學習路線分享MyBatis之基本使用程式設計師JavaMyBatis
- 好程式設計師Java學習路線分享maven是什麼程式設計師JavaMaven
- 好程式設計師Java學習路線分享原生Ajax的使用程式設計師Java
- 好程式設計師Java學習路線分享Java-String常用方法程式設計師Java
- 好程式設計師Java學習路線分享Java中的位移運算程式設計師Java
- 好程式設計師Java學習路線分享MyBatis之Spring整合程式設計師JavaMyBatisSpring
- 好程式設計師Java學習路線分享Dubbo架構介紹程式設計師Java架構
- 好程式設計師Java學習路線分享多執行緒概念程式設計師Java執行緒
- 好程式設計師Java學習路線分享MySQL目錄結構程式設計師JavaMySql
- 好程式設計師Java學習路線分享finalize()方法詳解程式設計師Java
- 好程式設計師Java學習路線分享SpringMVC之MVC概述程式設計師JavaSpringMVC
- 好程式設計師Java學習路線分享三大特性之多型程式設計師Java多型
- 好程式設計師Java學習路線之集程式設計師Java
- 好程式設計師Java學習路線分享Java弱引用的理解與使用程式設計師Java
- 好程式設計師Java學習路線分享Java案例-封裝JDBC工具類程式設計師Java封裝JDBC
- 好程式設計師Java學習路線分享怎麼理解Java物件導向程式設計師Java物件
- 好程式設計師Java學習路線分享如何處理中文引數程式設計師Java
- 好程式設計師Java學習路線分享MyBatis之關聯查詢程式設計師JavaMyBatis
- 好程式設計師Java學習路線分享JVM類載入機制程式設計師JavaJVM
- 好程式設計師Java學習路線分享Spring常見面試題程式設計師JavaSpring面試題
- 好程式設計師大資料學習路線分享MAPREDUCE程式設計師大資料
- 好程式設計師大資料學習路線分享SparkSQl程式設計師大資料SparkSQL
- 好程式設計師Java學習路線JSP物件程式設計師JavaJS物件
- 好程式設計師Java學習路線分享Java面試題之載入機制程式設計師Java面試題
- 好程式設計師大資料學習路線分享Hbase指令學習程式設計師大資料
- 好程式設計師Java學習路線分享5分鐘瞭解計數排序程式設計師Java排序
- 好程式設計師雲端計算學習路線分享檢視程式process程式設計師
- 好程式設計師Java學習路線分享JavaScript基本資料型別分析程式設計師JavaScript資料型別
- 好程式設計師Java學習路線分享JavaEE的13種核心技術程式設計師Java
- 好程式設計師Java學習路線分享SpringMVC之請求和響應程式設計師JavaSpringMVC
- 好程式設計師雲端計算學習路線分享:關於NFS程式設計師NFS