中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Web服務(wù)器(Tomcat)高級優(yōu)化

2022-10-02    分類: 網(wǎng)站建設(shè)

Tomcat背景

自從JSP發(fā)布之后,推出了各式各樣的JSP引擎。Apache Group在完成GNUJSP1.0的開發(fā)以后,開始考慮在SUN的JSWDK基礎(chǔ)上開發(fā)一個可以直接提供Web服務(wù)的JSP服務(wù)器,當(dāng)然同時也支持Servlet, 這樣Tomcat就誕生了。Tomcat是jakarta項目中的一個重要的子項目,其被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的Java產(chǎn)品,同時它又是sun公司官方推薦的servlet和jsp容器,因此其越來越多的受到軟件公司和開發(fā)人員的喜愛。servlet和jsp的最新規(guī)范都可以在tomcat的新版本中得到實現(xiàn)。其次,Tomcat是完全免費開源的軟件,任何人都可以從互聯(lián)網(wǎng)上自由地下載。Tomcat與Apache的組合相當(dāng)好。

 

Web服務(wù)器(Tomcat)高級優(yōu)化

Web服務(wù)器(Tomcat)高級優(yōu)化

湯姆貓

本章知識鏈路

Tomcat被譽為最好的web服務(wù)器,基本上每一位開發(fā)人員(JAVA)都會使用,因此本章從以下幾個方面來講解,若文中有誤的地方大伙可以留言討論,一起研究研究。

Tomcat之JVM內(nèi)存查看; Tomcat之啟動優(yōu)化; Tomcat之并發(fā)優(yōu)化; Tomcat之內(nèi)存優(yōu)化; apache的ab壓力測試; Tomcat之BIO/NIO/APR的三大模式(略)。
Web服務(wù)器(Tomcat)高級優(yōu)化

tomcat思路

Tomcat之JVM內(nèi)存查看

此處我以tomcat6和tomcat7來進行講解,tomcat7+ 配置、操作方法類似。

Tomcat6的User配置:
Web服務(wù)器(Tomcat)高級優(yōu)化

Tomcat6配置

Tomcat7的User配置:
Web服務(wù)器(Tomcat)高級優(yōu)化

Tomcat7配置

上述設(shè)置完成后:

本地訪問 /localhost:8080/manager/status

Web服務(wù)器(Tomcat)高級優(yōu)化

未優(yōu)化前信息

Tomcat之啟動優(yōu)化

Linux中修改catalina.sh文件,windows中修改catalina.bat文件;內(nèi)容如下:
Web服務(wù)器(Tomcat)高級優(yōu)化

 

export JAVA_OPTS="

-server

-Xms1600M

-Xmx1600M

-Xss512k

-XX:+AggressiveOpts

-XX:+UseBiasedLocking

-XX:PermSize=128M

-XX:MaxPermSize=256M

-XX:+DisableExplicitGC

-XX:MaxTenuringThreshold=31

-XX:+UseConcMarkSweepGC

-XX:+UseParNewGC

-XX:+CMSParallelRemarkEnabled

-XX:+UseCMSCompactAtFullCollection

-XX:LargePageSizeInBytes=128m

-XX:+UseFastAccessorMethods

-XX:+UseCMSInitiatingOccupancyOnly

-Djava.awt.headless=true"

檢查是否生效
Web服務(wù)器(Tomcat)高級優(yōu)化

 

Tomcat之并發(fā)優(yōu)化

修改位置:

/opt/tomcat7/conf下的server.xml文件中<Connector>節(jié)點的配置優(yōu)化,一定先備份。

Web服務(wù)器(Tomcat)高級優(yōu)化

 

標(biāo)準(zhǔn)版優(yōu)化:

<Connector port="8080"

protocol="org.apache.coyote.http11.Http11NioProtocol"

maxThreads="600"

minSpareThreads="100"

maxSpareThreads="500"

acceptCount="700"

connectionTimeout="20000"

redirectPort="8443" />

復(fù)雜版優(yōu)化:

<Connector port="8080"

protocol="HTTP/1.1"

URIEncoding="UTF-8"

minSpareThreads="25"

maxSpareThreads="75"

enableLookups="false"

disableUploadTimeout="true"

connectionTimeout="20000"

acceptCount="300"

maxThreads="300"

maxProcessors="1000"

minProcessors="5"

useURIValidationHack="false"

compression="on"

compressionMinSize="2048"

compressableMimeType="text/html,text/xml,text/JavaScript,text/css,text/plain"

redirectPort="8443"/>

Tomcat之內(nèi)存優(yōu)化

錯誤排查:

查看%TOMCAT_HOME%\logs文件夾下,日志文件是否有內(nèi)存溢出錯誤

錯誤提示一:java.lang.OutOfMemoryError: Java heap space

產(chǎn)生原因:

Tomcat默認(rèn)可以使用的內(nèi)存為128MB,在較大型的應(yīng)用項目中,這點內(nèi)存是不夠的,有可能導(dǎo)致系統(tǒng)無法運行。

常見的問題是報Tomcat內(nèi)存溢出錯誤,Out of Memory(系統(tǒng)內(nèi)存不足)的異常,從而導(dǎo)致客戶端顯示500錯誤,

一般調(diào)整Tomcat的使用內(nèi)存即可解決此問題。

解決辦法:

Windows環(huán)境下修改:

“%TOMCAT_HOME%\bin\ catalina.bat ”文件,在文件開頭增加如下設(shè)置:

JAVA_OPTS=-Xms2048m -Xmx2048m

Linux環(huán)境下修改:

“%TOMCAT_HOME%\bin\ catalina.sh ”文件,在文件開頭增加如下設(shè)置:

JAVA_OPTS=-Xms2048m -Xmx2048m

錯誤提示二:java.lang.OutOfMemoryError: PermGen space

產(chǎn)生原因

PermGen space的全稱是Permanent Generation space,是指內(nèi)存的永久保存區(qū)域,這塊內(nèi)存主要是被JVM存放Class和Meta信息的,Class在被Loader時就會被放到PermGen space中,它和存放類實例(Instance)的Heap區(qū)域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果你的應(yīng)用中有很CLASS的話,就很可能出現(xiàn)PermGen space錯誤,這種錯誤常見在web服務(wù)器對JSP進行pre-compile的時候。如果你的WEB APP下都用了大量的第三方j(luò)ar, 其大小超過了jvm默認(rèn)的大小(4M)那么就會產(chǎn)生此錯誤信息了 。

解決辦法:

Windows環(huán)境下修改:

“%TOMCAT_HOME%\bin\ catalina.bat ”文件,在文件開頭增加如下設(shè)置:

set JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m - XX:MaxPermSize=256m

Linux環(huán)境下修改:

“%TOMCAT_HOME%\bin\ catalina.sh ”文件,在文件開頭增加如下設(shè)置:

export JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m XX:MaxPermSize=256m

windows中修改位置:

Web服務(wù)器(Tomcat)高級優(yōu)化

 

Apache的ab壓力測試

下載httpd-2.2.29.tar.gz包 /opt下面解壓:httpd-2.2.29.tar.gz 根目錄/下:

mkdir -p /usr/local/web/apache

/opt下進入httpd-2.2.29文件夾:cd httpd-2.2.29 安裝

./configure --prefix=/usr/local/web/apache --enable-shared=max --enable-module=rewirte --enable-module=so

make

make install

ab壓力測試開始:

進入/usr/local/web/apache/bin目錄下,執(zhí)行以下命令:

ab -n1000 -c100 /localhost:8080/

報告說明
Web服務(wù)器(Tomcat)高級優(yōu)化

 

Web服務(wù)器(Tomcat)高級優(yōu)化

 

附注

因時間有限,文章中細(xì)節(jié)應(yīng)用未在此體現(xiàn),大家閱讀時若有疑問可以隨時留言討論。小編在這里致敬每一位技術(shù)人,大家辛苦啦?。。?!

文章題目:Web服務(wù)器(Tomcat)高級優(yōu)化
分享路徑:http://www.rwnh.cn/news19/200519.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計公司、網(wǎng)站收錄網(wǎng)站設(shè)計公司、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計
阿合奇县| 扎囊县| 莒南县| 建始县| 慈利县| 福清市| 库尔勒市| 阿拉善右旗| 高雄市| 漾濞| 卢湾区| 弋阳县| 工布江达县| 巴青县| 平顶山市| 自贡市| 微山县| 巫溪县| 卢龙县| 冷水江市| 铜川市| 新田县| 隆子县| 什邡市| 衡阳县| 正安县| 江永县| 汶上县| 益阳市| 南乐县| 望谟县| 定结县| 剑河县| 罗山县| 航空| 福安市| 溆浦县| 金川县| 汉寿县| 合肥市| 贡嘎县|