日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

使用Tomcat Native提升Tomcat IO效率的方法詳解

瀏覽:518日期:2023-03-19 16:51:28
目錄
  • 簡介
  • Tomcat的連接方式
  • APR和Tomcat Native
  • 在tomcat中使用APR

簡介

IO有很多種,從最開始的Block IO,到nonblocking IO,再到IO多路復用和異步IO,一步一步的將IO的性能提升做到極致。

今天我們要介紹一下怎么使用Tomcat Native來提升Tomcat IO的效率。

Tomcat的連接方式

Tomcat中使用連接器來處理與外部客戶端的通信。Connecter主要用來接受外部客戶端的請求,并轉交給處理引擎處理。

在Tomcat中有兩種Connector。一種是 HTTP connector, 一種是AJP connector。

HTTP connector大家應該很好理解,它也是tomcat默認使用的連接器。

還有一個連接器叫做AJP,AJP主要是用來和web服務器進行通信用的,因為AJP協議的速度要比HTTP的快,所以AJP除了用來和其他webserver進行通信之外,還可以通過AJP來構建tomcat集群。

這兩種方式都支持4中協議,分別是BIO,NIO,NIO2和APR。

#以下四種Connector實現都是直接處理來自客戶端Http請求
org.apache.coyote.http11.Http11Protocol : 支持HTTP/1.1 協議的連接器。

org.apache.coyote.http11.Http11NioProtocol : 支持HTTP/1.1 協議+New IO的連接器。

org.apache.coyote.http11.Http11Nio2Protocol : 支持HTTP/1.1 協議+New IO2的連接器。

org.apache.coyote.http11.Http11AprProtocol : 使用APR(Apache portable runtime)技術的連接器,利用Native


#以下四種實現方法則是與web server打交道
org.apache.coyote.ajp.AjpProtocol:使用AJP協議的連接器,實現與web server(如Apache httpd)之間的通信

org.apache.coyote.ajp.AjpNioProtocol:SJP協議+ New IO

org.apache.coyote.ajp.AjpNio2Protocol:SJP協議+ New IO2

org.apache.coyote.ajp.AjpAprProtocol:AJP + APR

講下他們的區別,BIO就是block IO是最最基礎的IO方式, 我們通過這樣來配置:

<Connector port=”8080” 
protocol=”HTTP/1.1”
 
maxThreads=”150” 
connectionTimeout=”20000” 
redirectPort=”8443” />

Tomcat7以下版本在默認情況下是以bio模式運行的。自Tomcat 8.5 版本開始,Tomcat就移除了對BIO的支持。

New IO是基于java.nio包及其子包的一種IO方式。能提供非阻塞IO方式,比傳統的BIO擁有與更加高效的運行效率。

我們這樣配置New IO:

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

New IO和New IO2有什么區別呢?

New IO2是tomcat8中引入的IO方式,我們可以這樣配置:

<Connector port="8080" protocol="org.apache.coyote.http11.Http11Nio2Protocol"
connectionTimeout="20000"
redirectPort="8443" />

apr這種方式就高級了,這個是我們今天要講解的tomcat native的主要作用。

APR和Tomcat Native

apr的全稱是Apache Portable Runtime,它是一個高度可移植的庫,它是Apache HTTP Server 2.x的核心。 APR有許多用途,包括訪問高級IO功能(例如sendfile,epoll和OpenSSL),操作系統級別的功能(生成隨機數,系統狀態等)和本機進程處理(共享內存,NT管道和Unix套接字)。

Tomcat可以通過JNI的形式調用Apache HTTP服務器的核心動態鏈接庫來處理文件讀取或網絡傳輸操作,從而大大地提高Tomcat對靜態文件的處理性能。

通過使用APR我們可以獲得如下的特性:

  • Non-blocking I/O和請求連接保持。
  • 支持OpenSSL和TLS/SSL。

Tomcat Native是一個庫,通過這個庫,Tomcat可以使用APR。

所以使用Tomcat Native的前提是需要安裝好APR library,OpenSSL和JDK。

我們可以通過下面的方式來安裝apr和openssl:

debian based linux系統:

apt-get install libapr1.0-dev libssl-dev

rpm based Linux 系統:

yum install apr-devel openssl-devel

在windows下面,tcnative是以一個dll的形式來提供的,我們直接下載使用就可以了。

但是在linux下面,因為平臺不同,所以在linux下面tcnative是需要自行編譯的。

一般來說我們可以在 bin/tomcat-native.tar.gz 找到tcnative的源碼包。將其解壓。

先運行configure命令:

./configure --with-apr=/usr/bin/apr-1-config \
  --with-java-home=/home/jfclere/JAVA/jdk1.7.0_80/ \
  --with-ssl=yes \
  --prefix=$CATALINA_HOME

再進行make操作:

make && make install

生成的lib文件將會被放入$CATALINA_HOME/lib中。

在tomcat中使用APR

安裝好tcnative之后,我們就可以在tomcat中使用APR了。

先檢查一下conf/server.xml中是否有下面的配置:

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

然后我們需要修改 $CATALINA_HOME/bin/setenv.sh 將tc-native 的lib文件添加到LD_LIBRARY_PATH中。

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib
export LD_LIBRARY_PATH

最后添加APR的連接:

<Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"
connectionTimeout="20000"
redirectPort="8443" />

運行即可。

從日志中,我們會發現下面的內容:

org.apache.catalina.core.AprLifecycleListener init

INFO: Loaded APR based Apache Tomcat Native library 1.x.y.

org.apache.catalina.core.AprLifecycleListener init

INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].

org.apache.coyote.http11.Http11AprProtocol init

說明APR安裝完畢并且已經在被使用了。

到此這篇關于使用Tomcat Native提升Tomcat IO效率的方法詳解的文章就介紹到這了,更多相關Tomcat Native提升Tomcat IO效率內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: Tomcat
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
一本大道色婷婷在线| 久久国产电影| 久久久人人人| 国产精品99久久免费观看| 清纯唯美亚洲综合一区| 欧美精品观看| 日韩欧美另类一区二区| 国产精品精品| 波多野结衣一区| 蜜臀精品一区二区三区在线观看| 亚洲tv在线| 鲁大师精品99久久久| 日韩成人三级| 国产aⅴ精品一区二区三区久久| 丝袜诱惑一区二区| 日韩av在线播放网址| 一级欧洲+日本+国产| 水蜜桃久久夜色精品一区的特点| 国产字幕视频一区二区| 99视频一区| 久久不卡国产精品一区二区| 国产精品日本一区二区不卡视频 | 丝袜美腿成人在线| 综合亚洲色图| 色婷婷久久久| 女人av一区| 六月婷婷一区| 日韩国产一区二区三区| 久久婷婷亚洲| 国产精品日韩久久久| 一区二区精品| 麻豆久久一区二区| 久久精品主播| 亚洲欧美专区| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 国产精品高潮呻吟久久久久| 精品理论电影在线| 伊人久久大香线蕉av超碰演员| 久久av一区| 国产精品激情电影| 国产综合色产| 久久精品999| 午夜av成人| 精品国产欧美日韩一区二区三区| 日韩欧美一区二区三区在线观看| 国产亚洲福利| 国产精品扒开腿做爽爽爽软件| 日韩视频网站在线观看| 蜜臀av亚洲一区中文字幕| 美女视频免费精品| 美女精品一区| 欧美xxxx中国| 免费成人性网站| 国产日韩中文在线中文字幕| 亚洲www免费| 97久久亚洲| 婷婷成人在线| 国产va免费精品观看精品视频| 亚洲国内欧美| 国产精品一区高清| 午夜久久美女| 精品国产亚洲一区二区三区在线| 亚洲自拍另类| 水蜜桃久久夜色精品一区| 美女被久久久| 日韩一区电影| 国产日产精品一区二区三区四区的观看方式| 三上悠亚国产精品一区二区三区| 亚洲伊人精品酒店| 亚洲成人va| 国产欧美久久一区二区三区| 欧美日韩水蜜桃| 美女久久99| 亚洲资源网站| 极品日韩av| 九九久久国产| 亚洲精品人人| 精品在线91| 国产精品精品| 国产精品mv在线观看| 亚洲无线观看| 日韩午夜黄色| 欧美日韩视频免费观看| 人人爱人人干婷婷丁香亚洲| 9色精品在线| 欧美精品日日操| 精品国产欧美日韩| 国产日产高清欧美一区二区三区| 欧美在线综合| 欧美一区二区三区高清视频| 精品久久电影| 国产精品伦一区二区| 亚洲v天堂v手机在线| 国产亚洲永久域名| 欧美中文一区二区| 中文在线а√在线8| 国产精品片aa在线观看| 综合欧美精品| 亚洲女人av| 午夜欧美视频| 免费视频国产一区| 欧美日韩国产一区二区三区不卡| 日韩高清成人| 高清av不卡| 国语对白精品一区二区| 国产精品白浆| 国产午夜一区| 日韩精品第二页| 国产乱码精品一区二区亚洲| 亚洲欧美日本日韩| 午夜久久黄色| 亚洲性图久久| 神马午夜久久| a天堂资源在线| 精品国产99| 欧美经典一区| 国产精品调教| 国产精品s色| 欧美日韩伊人| 国产乱码精品一区二区三区亚洲人| 亚洲精品人人| 日本亚州欧洲精品不卡| 亚洲欧美专区| 欧美日韩一区自拍| 国产欧美日韩在线一区二区| 国产精品一区亚洲| 麻豆成人91精品二区三区| 精品中文在线| 精品久久精品| 日韩大片在线观看| 日本а中文在线天堂| 日韩欧美国产精品综合嫩v| 亚洲综合电影| 国产综合精品一区| 日韩一区二区免费看| 性色av一区二区怡红| 亚洲精品成a人ⅴ香蕉片| 视频一区中文字幕精品| 国产欧美自拍一区| 精品免费av| 欧美日一区二区| 日av在线不卡| 欧美亚洲二区| 欧美国产视频| 黑人精品一区| 亚洲精品1区| 日韩欧美中文字幕在线视频| 国产欧美日韩一级| 中文字幕在线高清| 国产尤物精品| 亚洲精品自拍| 精品国产美女a久久9999| 久久国产毛片| 亚洲精品看片| 精品深夜福利视频| 亚洲婷婷在线| 日韩一区二区三区四区五区| 国产精品hd| 欧美gv在线| 日韩中文字幕av电影| 欧美一区免费| 麻豆理论在线观看| aⅴ色国产欧美| 国产精品一线| 米奇777超碰欧美日韩亚洲| 伊人久久大香伊蕉在人线观看热v| 国产丝袜一区| 欧美日韩精品免费观看视欧美高清免费大片| 国产手机视频一区二区| 国产午夜久久av| 欧美亚洲激情| 国产欧美一级| 久久精选视频| 日韩高清欧美激情| 伊人久久在线| 日韩精品a在线观看91| 高清不卡亚洲| 日韩在线麻豆| 日韩欧美另类一区二区| 亚洲精品第一| 日韩深夜视频| 日韩影片在线观看| 欧美不卡高清一区二区三区| 中文在线日韩| 婷婷激情一区| 欧美亚洲一区二区三区| 久久精选视频| 久久国产麻豆精品| 国产v综合v| 日本午夜免费一区二区| 国产一区亚洲| 麻豆精品蜜桃视频网站| 国产亚洲高清视频| 精品久久亚洲| 日本在线一区二区三区| 亚洲a在线视频| 久久精品超碰| 亚洲综合欧美| 亚洲精品.com| 久久中文字幕一区二区|