tinguo002

           

          tomcat7整合APR(win7和linux環(huán)境下)

          錯(cuò)誤提示:
          The APR based Apache Tomcat Native library which allows optimal performanc e in production environments was not found on the java.library.path: D:\Java\jdk 1.5.0_07\bin

          詳細(xì)參考出處:http://blog.csdn.net/zh592677127/article/details/8603490


          tomcat7如果沒(méi)配置APR,啟動(dòng)時(shí)會(huì)報(bào)這樣的錯(cuò)誤日志:
          信息: The APR based Apache Tomcat Native library which allows optimal performanc e in production environments was not found on the java.library.path: D:\Java\jdk 1.5.0_07\bin,提示沒(méi)找到APR的配置
          先解釋一下APR,APR: Apache Portable Runtime,可看作是Apache輕便運(yùn)行時(shí),在http://tomcat.apache.org/tomcat-6.0-doc/apr.html 對(duì)APR進(jìn)行了詳細(xì)介紹,說(shuō)白了作用就是如何在 Tomcat中使用JNI的方式來(lái)讀取文件以及進(jìn)行網(wǎng)絡(luò)傳輸。這個(gè)東西可以大大提升Tomcat對(duì)靜態(tài)文件的處理性能,同時(shí)如果你使用了HTTPS方式傳輸?shù)脑挘部梢蕴嵘齋SL的處理性能。可以不使用Apache也能提高對(duì)靜態(tài)文件的處理能力。
            Tomcat可以使用APR來(lái)提供超強(qiáng)的可伸縮性和性能,更好地集成本地服務(wù)器技術(shù).
            APR(Apache Portable Runtime)是一個(gè)高可移植庫(kù),它是Apache HTTP Server 2.x的核心。APR有很多用途,包括訪問(wèn)高級(jí)IO功能(例如sendfile,epoll和OpenSSL),OS級(jí)別功能(隨機(jī)數(shù)生成,系統(tǒng)狀態(tài)等等),本地進(jìn)程管理(共享內(nèi)存,NT管道和UNIX sockets)。這些功能可以使Tomcat作為一個(gè)通常的前臺(tái)WEB服務(wù)器,能更好地和其它本地web技術(shù)集成,總體上讓Java更有效率作為一個(gè)高性能web服務(wù)器平臺(tái)而不是簡(jiǎn)單作為后臺(tái)容器。
            在產(chǎn)品環(huán)境中,特別是直接使用Tomcat做WEB服務(wù)器的時(shí)候,應(yīng)該使用Tomcat Native來(lái)提高其性能。
            要測(cè)APR給tomcat帶來(lái)的好處最好的方法是在慢速網(wǎng)絡(luò)上(模擬 Internet),將Tomcat線程數(shù)開(kāi)到300以上的水平,然后模擬一大堆并發(fā)請(qǐng)求。如果不配APR,基本上300個(gè)線程狠快就會(huì)用滿,以后的請(qǐng)求就只好等待。但是配上APR之后,并發(fā)的線程數(shù)量明顯下降,從原來(lái)的300可能會(huì)馬上下降到只有幾十,新的請(qǐng)求會(huì)毫無(wú)阻塞的進(jìn)來(lái)。在局域網(wǎng)環(huán)境測(cè),就算是 400個(gè)并發(fā),也是一瞬間就處理/傳輸完畢,但是在真實(shí)的Internet環(huán)境下,頁(yè)面處理時(shí)間只占0.1%都不到,絕大部分時(shí)間都用來(lái)頁(yè)面?zhèn)鬏敗?br />  一. Windows環(huán)境:
            APR需要安裝三個(gè)組件:
               1、APR library
               2、JNI wrappers for APR used by Tomcat (libtcnative)
               3、OpenSSL libraries
            從http://tomcat.heanet.ie/native/1.1.14/binaries/win32/ ,下載tcnative-1.1.10.dll,tcnative-1.1.10.dll已經(jīng)包含了上面的三個(gè)組件,所以只要把tcnative-1.1.10.dll拷貝到tomcat的bin下就行了。
            然后啟動(dòng)tomcat,啟動(dòng)后的信息為:信息: Loaded APR based Apache Tomcat Native library 1.1.14. 2009-12-24 14:17:59 org.apache.catalina.core.AprLifecycleListener init 信息: APR capabilities: IPv6 [false], sendfile [true], accept filters [false], r andom [true]. 2009-12-24 14:18:00 org.apache.coyote.http11.Http11AprProtocol init 這說(shuō)明APR配置成功,已經(jīng)啟用。
            windows中還有一種方式是:
              1.將 tcnative-1.1.10.dll 放于tomcat的同級(jí)目錄 APR/lib 下;
              2. 修改一下 catalina.bat,加上set CATALINA_OPTS="-Djava.library.path=../../APR/lib"
            還有就是直接將 tcnative-1.1.10.dll加到系統(tǒng)變量PATH里面,也可以放在 windows/system32 下面。
            二. Linux環(huán)境:
            (1).安裝APR
            APR需要三個(gè)組件:
              1.apr-1.3.9.tar.gz
              2.apr-util-1.3.9.tar.gz
              3.tomcat-native.tar.gz
            從 http://apr.apache.org/download.cgi 上可下載apr-1.3.9.tar.gz和apr-util-1.3.9.tar.gz,tomcat中自帶 tomcat-native.tar.gz ,
            將 apr-1.3.9.tar.gz和 apr-util-1.3.9.tar.gz 上傳到/usr/local/目錄,
            # wget   http://apache.freelamp.com/apr/apr-1.3.9.tar.gz
            #apr-1.3.9.tar.gz
            #tar zxvf apr-1.3.9.tar.gz
            #cd apr-1.3.9
            #./configure
            #make
            #make install
            執(zhí)行完后,會(huì)有提示信息:
            Libraries have been installed in:
              /usr/local/apr/lib
            If you ever happen to want to link against installed libraries
            in a given directory, LIBDIR, you must either use libtool, and
            specify the full pathname of the library, or use the `-LLIBDIR'
            flag during linking and do at least one of the following:
              - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
                during execution
              - add LIBDIR to the `LD_RUN_PATH' environment variable
                during linking
              - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
              - have your system administrator add LIBDIR to `/etc/ld.so.conf'
            See any operating system documentation about shared libraries for
            more information, such as the ld(1) and ld.so(8) manual pages.
            會(huì)在/local生成apr目錄, apr-1.3.9 的庫(kù)安裝在/usr/local/apr/lib目錄。
            # wget   http://apache.freelamp.com/apr/apr -util -1.3.9.tar.gz
            #apr-util-1.3.9.tar.gz
            #tar zxvf apr-util-1.3.9.tar.gz
            #cd apr-util-1.3.9
            #./configure --with-apr=/usr/local/apr    //配置指向apr-1.3.9的安裝目錄
            #make
            #make install
            command執(zhí)行完后,提示信息和 apr-1.3.9的信息相同,表示apr-util-1.3.9 的庫(kù)也安裝在/usr/local/apr/lib目錄。
            安裝 tomcat-native組件
            #cd /usr/local/tomcat6/bin
            #tar zxvf tomcat-native.tar.gz
            #cd tomcat-native-1.1.16-src/jni/native
            # . /configure --with-apr=/usr/local/apr --with-java-home=/usr/java/jdk1.5.0_20
            #make
            #make install
            command執(zhí)行完的提示信息和安裝  apr-1.3.9 的提示相同,表示 tomcat-native 的庫(kù) 也是安裝在 /usr/local/apr/lib目錄。
            (2)設(shè)置 Tomcat 整合 APR
            有兩種方法:
            1.修改 tomcat 的啟動(dòng) shell ( catalina.sh ),在該文件中加入啟動(dòng)參數(shù): CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"
            2.也可以在環(huán)境變量中配置/etc/profile中加入
            export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr /lib
                 vi  /etc/profile 
                # 后面添加以下內(nèi)容
                 export  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/ local /apr/lib
                # 使profile生效,  
                 source  /etc/profile
            (3).判斷安裝成功:
            啟動(dòng)tomcat,看日志
            #bin/startup.sh 
            #head  logs/catalina.out
            如果看到下面的啟動(dòng)日志,表示成功。
            2009-12-24 17:34:32 org.apache.coyote.http11.Http11AprProtocol init


          歡迎大家訪問(wèn)我的個(gè)人網(wǎng)站 萌萌的IT人

          posted on 2014-07-17 15:10 一堣而安 閱讀(3018) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Linux

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(1)

          隨筆分類(lèi)

          隨筆檔案

          收藏夾

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 安国市| 双桥区| 辉南县| 略阳县| 台中市| 荣成市| 澳门| 天柱县| 加查县| 江门市| 西青区| 常山县| 威信县| 馆陶县| 大丰市| 南宁市| 大足县| 皋兰县| 两当县| 陇南市| 乌苏市| 都江堰市| 赫章县| 扶沟县| 云阳县| 宁都县| 常熟市| 塔城市| 宁津县| 满城县| 安仁县| 海伦市| 托克逊县| 高州市| 大庆市| 渝中区| 泽普县| 太康县| 巴中市| 阿克陶县| 长泰县|