黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

nginx+keepalived+tomcat之tomcat性能調優(yōu)

系統(tǒng) 2710 0
nginx+keepalived+tomcat之tomcat性能調優(yōu)

tomcat容器調優(yōu)

vim $CATALINA_HOME/conf/server.xml

...

<Connector port="8080" protocol="HTTP/1.1"

????????? URIEncoding="UTF-8"? minSpareThreads="25" maxSpareThreads="75"

????????? enableLookups="false" disableUploadTimeout="true" connectionTimeout="20000"

????????? acceptCount="500"? maxThreads="300"

????????? useURIValidationHack="false"

? ? ? ? ? compression="on" compressionMinSize="2048"

? ? ? ? ? compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"

? ? ? ? ? redirectPort="8443"

/>

...

【注釋】

URIEncoding:URI編碼,這里參數(shù)是UTF-8,很容易理解,即支持中文域名

minSpareThreads:最小空閑線程,即tomcat可以保留的最小線程

? ? |-->????maxSpareThreads:最大空閑進程,如果超出這個參數(shù),則會被回收

(這兩個參數(shù)根據(jù)實際環(huán)境而定,如果每天都有一個并發(fā)爆發(fā)期,則最好min設置的大一些)

enableLookups:是否開啟域名解析,這個一般都禁止,域名解析影響性能

disableUploadTimeout:

connectionTimeout:連接超時時間,單位是ms,根據(jù)程序性能決定

maxThreads:同一時刻可以接收的最大請求,即并發(fā)量

acceptCount:若超出maxThreads,則超出部分不能超過此參數(shù)值,若超過,則拒絕

useURIValidationHack:設置為false可以減少tomcat對一些url的不必要的檢查從而減省開銷【不明覺厲】

compression:是否啟用壓縮,肯定啟用了

compressionMinSize:壓縮文件大小下限,單位字節(jié)

compressableMimeType:壓縮文件的Mime類型

redirectPort:重定向(因此若為443https,則8443 connector也應該加入以上參數(shù))



jvm調優(yōu)

vim $CATALINA_HOME/bin/catalina.sh

...


export JAVA_OPTS="-server -Xms8192M -Xmx8192M -Xmn3072M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:PermSize=256M -XX:MaxPermSize=4096M -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=31 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC ?-XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m ?-XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true"

...

【注釋信息】

jvm調優(yōu)其實就是在catalina啟動時臨時加上JAVA_OPTS變量值的。

-server:意思就是將tomcat改為生產模式,這個看網(wǎng)上說明,不加的話,就如同實驗環(huán)境一樣。因此,必加參數(shù)

-Xms:jvm最小堆內存

? ?|--> ????-Xmx:jvm最大堆內存

這兩個值的差值叫做保留內存,不過建議最好設置的一樣,即最小內存隨同最大內存,之所以這么設置是因為,內存回收的時候,也是需要消耗cpu的,如果此時突然并發(fā)又來了,而tomcat卻在回收內存,那么就不爽了

-Xmn:新生態(tài)內存,這個官方建議是jvm堆內存的3/8,堆內存=新生內存+老年內存+持久內存

-Xss:設定每個線程的堆棧大小

-XX:+AggressiveOpts:作用如其名(aggressive),啟用這個參數(shù),則每當JDK版本升級時,你的JVM都會使用最新加入的優(yōu)化技術

-XX:+UseBiasedLocking:啟用一個優(yōu)化了的線程鎖,我們知道在我們的appserver,每個http請求就是一個線程,有的請求短有的請求長,就會有請求排隊的現(xiàn)象,甚至還會出現(xiàn)線程阻塞,這個優(yōu)化了的線程鎖使得你的appserver內對線程處理自動進行最優(yōu)調配。

-XX:PermSize:持久態(tài)最小內存,默認為物理內存大小的1/64

-XX:MaxPermSize:持久態(tài)最大內存,默認為物理內存大小的1/4

-XX:+DisableExplicitGC:在程序代碼中不允許有顯示的調用”System.gc()”,【不明覺厲】

-XX:MaxTenuringThreshold:設置對象在年輕態(tài)停留的時間,時間越長,被回收概率越大,若為0,則直接轉到老年態(tài)

-XX:+UseConcMarkSweepGC:CMS gc,這一特性只有jdk1.5即后續(xù)版本才具有的功能,它使用的是gc估算觸發(fā)和heap占用觸發(fā)。

我們知道頻頻繁的GC會造面JVM的大起大落從而影響到系統(tǒng)的效率,因此使用了CMS GC后可以在GC次數(shù)增多的情況下,每次GC的響應時間卻很短,比如說使用了CMS GC后經(jīng)過jprofiler的觀察,GC被觸發(fā)次數(shù)非常多,而每次GC耗時僅為幾毫秒。【不明覺厲】

-XX:+UseParNewGC:年輕代采用多線程并行回收,加速回收 ?

? ? |-->? ?-XX:+CMSParallelRemarkEnabled:在使用UseParNewGC 的情況下, 盡量減少 mark 的時間【不明覺厲】

-XX:+UseCMSCompactAtFullCollection:在使用concurrent gc 的情況下, 防止 memoryfragmention, 對live object 進行整理, 使 memory 碎片減少【不知道啥意思】

-XX:LargePageSizeInBytes:指定 Java heap的分頁頁面大小

-XX:+UseFastAccessorMethods:get,set 方法轉成本地代碼【不知道啥意思】

-XX:+UseCMSInitiatingOccupancyOnly:指示只有在 oldgeneration 在使用了初始化的比例后concurrent collector 啟動收集【不知道啥意思】

-Djava.awt.headless=true":這個參數(shù)一般我們都是放在最后使用的,這全參數(shù)的作用是這樣的,有時我們會在我們的J2EE工程中使用一些圖表工具如:jfreechart,用于在 web網(wǎng)頁輸出GIF/JPG等流,在winodws環(huán)境下,一般我們的app server在輸出圖形時不會碰到什么問題,但是在linux/unix環(huán)境下經(jīng)常會碰到一個exception導致你在winodws開發(fā)環(huán)境下圖片顯 示的好好可是在linux/unix下卻顯示不出來,因此加上這個參數(shù)以免避這樣的情況出現(xiàn)。【雖然知道結果,就是不知道因在何處】









nginx+keepalived+tomcat之tomcat性能調優(yōu)


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論