1. 程式人生 > >Tomcat三種執行模式bio & nio & apr

Tomcat三種執行模式bio & nio & apr

Tomcat Connector(Tomcat聯結器)有bio、nio、apr三種執行模式

bio

bio(blocking I/O,阻塞式I/O操作),表示Tomcat使用的是傳統的Java I/O操作(即java.io包及其子包)。
預設的模式,效能最差,沒有經過任何優化處理和支援。

nio
nio(non-blocking I/O),Java SE 1.4及後續版本提供的一種新的I/O操作方式(即java.nio包及其子包)。Java nio是一個基於緩衝區、並能提供非阻塞I/O操作的Java API。擁有比傳統I/O操作(bio)更好的併發執行效能。
要讓Tomcat以nio模式來執行,修改配置檔案:tomcat/conf/server.xml

將原有的內容:
<Connector port="8080" protocol="HTTP/1.1"
                    connectionTimeout="20000"
                    redirectPort="8443" />

修改為:
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
                    connectionTimeout="20000"
                    redirectPort="8443"
/>

重啟Tomcat

apr

apr(Apache Portable Runtime/Apache可移植執行時庫),Tomcat將以JNI的形式呼叫Apache HTTP伺服器的核心動態連結庫來處理檔案讀取或網路傳輸操作,從而大大地提高Tomcat對靜態檔案的處理效能。從作業系統級別來解決非同步的IO問題,大幅度的提高效能。 Tomcat apr也是在Tomcat上執行高併發應用的首選模式。要讓Tomcat以apr模式來執行,必須安裝apr和native