一 前言
tomcat的運(yùn)行模式有3種.修改他們的運(yùn)行模式.3種模式的運(yùn)行是否成功,可以看他的啟動(dòng)控制臺(tái),或者啟動(dòng)日志.或者登錄他們的默認(rèn)頁(yè)面http://localhost:8080/查看其中的服務(wù)器狀態(tài)。
二 bio
默認(rèn)的模式 blocking IO,性能非常低下,沒(méi)有經(jīng)過(guò)任何優(yōu)化處理和支持.
三 nio
利用java的異步io護(hù)理技術(shù),no blocking IO技術(shù).
想運(yùn)行在該模式下,直接修改server.xml里的Connector節(jié)點(diǎn),修改protocol為
<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
URIEncoding="UTF-8"
useBodyEncodingForURI="true"
enableLookups="false"
redirectPort="8443" />
啟動(dòng)后,就可以生效。性能得到初步優(yōu)化但與apr相比,還是有一些差距。
四 apr
安裝起來(lái)最困難,但是從操作系統(tǒng)級(jí)別來(lái)解決異步的IO問(wèn)題,大幅度的提高性能.
必須要安裝apr和native,直接啟動(dòng)就支持apr。
下面的修改純屬多余,僅供大家擴(kuò)充知識(shí),但仍然需要安裝apr和native
如nio修改模式,修改protocol為org.apache.coyote.http11.Http11AprProtocol
五 補(bǔ)充
1)安裝APR的方法,請(qǐng)看我另一篇博客http://phl.iteye.com/blog/910984;
2)關(guān)于性能數(shù)據(jù)請(qǐng)讀者們自行研究,筆者不是在寫(xiě)教科書(shū)在此只是給出思路,性能研究是個(gè)很深的領(lǐng)域,請(qǐng)各位按需自行搭建環(huán)境測(cè)試;
3)總的來(lái)說(shuō),bio是不推薦使用的,apr的模式推薦;
tomcat的運(yùn)行模式有3種.修改他們的運(yùn)行模式.3種模式的運(yùn)行是否成功,可以看他的啟動(dòng)控制臺(tái),或者啟動(dòng)日志.或者登錄他們的默認(rèn)頁(yè)面http://localhost:8080/查看其中的服務(wù)器狀態(tài)。
二 bio
默認(rèn)的模式 blocking IO,性能非常低下,沒(méi)有經(jīng)過(guò)任何優(yōu)化處理和支持.
三 nio
利用java的異步io護(hù)理技術(shù),no blocking IO技術(shù).
想運(yùn)行在該模式下,直接修改server.xml里的Connector節(jié)點(diǎn),修改protocol為
<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
URIEncoding="UTF-8"
useBodyEncodingForURI="true"
enableLookups="false"
redirectPort="8443" />
啟動(dòng)后,就可以生效。性能得到初步優(yōu)化但與apr相比,還是有一些差距。
四 apr
安裝起來(lái)最困難,但是從操作系統(tǒng)級(jí)別來(lái)解決異步的IO問(wèn)題,大幅度的提高性能.
必須要安裝apr和native,直接啟動(dòng)就支持apr。
下面的修改純屬多余,僅供大家擴(kuò)充知識(shí),但仍然需要安裝apr和native
如nio修改模式,修改protocol為org.apache.coyote.http11.Http11AprProtocol
五 補(bǔ)充
1)安裝APR的方法,請(qǐng)看我另一篇博客http://phl.iteye.com/blog/910984;
2)關(guān)于性能數(shù)據(jù)請(qǐng)讀者們自行研究,筆者不是在寫(xiě)教科書(shū)在此只是給出思路,性能研究是個(gè)很深的領(lǐng)域,請(qǐng)各位按需自行搭建環(huán)境測(cè)試;
3)總的來(lái)說(shuō),bio是不推薦使用的,apr的模式推薦;
item | protocol | Requests per second |
BIO | org.apache.coyote.http11.Http11Protocol | 916.06 [#/sec] (mean) |
NIO | org.apache.coyote.http11.Http11NioProtocol | 2102.26 [#/sec] (mean) |
APR | org.apache.coyote.http11.Http11AprProtocol | 1997.24 [#/sec] (mean) |
http://phl.iteye.com/blog/910996