apr 官方介绍:

Tomcat可以使用APR来提供超强的可伸缩性和性能,更好地集成本地服务器技术。

APR(Apache Portable Runtime)是一个高可移植库,它是Apache HTTP Server 2.x的核心。

APR有很多用途,包括访问高级IO功能(例如sendfile,epoll和OpenSSL),OS级别功能(随机数生成,系统状态等等),本地进程管理(共享内存,NT管道和UNIX sockets)。这些功能可以使Tomcat作为一个通常的前台WEB服务器,能更好地和其它本地web技术集成,总体上让Java更有效率作为一个高性能web服务器平台而不是简单作为后台容器。

在产品环境中,特别是直接使用Tomcat做WEB服务器的时候,应该使用Tomcat Native来提高其性能。
 
 
 
说白了,就是如何 在Tomcat中使用JNI的方式来读取文件以及进行网络传输。这个东西可以大大提升Tomcat对静态文件的处理性能,同时如果你使用了HTTPS方式 传输的话,也可以提升SSL的处理性能。
 
安装方式
 
在Window下安装
 
1. 首先下载 tcnative-1.dll
    下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.1.19/binaries/win32/
 
2. 直接拷贝tcnative-1.dll到TOMCAT_HOME/bin目录下,启动即可
 
3. 验证是否启动
    看见类似这样的信息
  1. 2011-7-20 15:17:05 org.apache.catalina.core.AprLifecycleListener init
  2. 信息: Loaded APR based Apache Tomcat Native library 1.1.20.
  3. 2011-7-20 15:17:05 org.apache.catalina.core.AprLifecycleListener init
  4. 信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
  5. 2011-7-20 15:17:05 org.apache.coyote.http11.Http11AprProtocol init
    就证明 apr 已启动
 
在Linux下安装
 
1. 下载所需的包
到http://apr.apache.org/下载下面3个包 
apr-1.4.5.tar.gz 
apr-iconv-1.2.1.tar.gz 
apr-util-1.3.12.tar.gz
 
到 http://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.1.20/source/ 下载
tomcat-native-1.1.20-src.tar.gz
 
2.  安装
 
a.  安装 apr
  1. tar zxvf apr-1.4.5.tar
  2. cd apr-1.4.5
  3. ./configure --prefix=/usr/local/apr
  4. make
  5. make install
 b. 安装 apr-iconv
  1. tar -zxvf apr-iconv-1.2.1.tar.gz
  2. cd apr-iconv-1.2.1
  3. ./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr
  4. make
  5. make install
 c. 安装 apr-util
  1. tar zxvf apr-util-1.3.12.tar.gz
  2. cd apr-util-1.3.12
  3. ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv
  4. make
  5. make install

d. 安装 tomcat-native

  1. tar zxvf tomcat-native-1.1.20-src.tar.gz
  2. cd tomcat-native-1.1.20-src/jni/native
  3. ./configure --with-apr=/usr/local/apr --with-java-home=/usr/java/jdk1.6.0_23
  4. make
  5. make install
3. 添加环境变量
 
vi /etc/profile #在文件末尾处添加下面的变量 
# apr 
export LD_LIBRARY_PATH=/usr/local/apr/lib
然后执行下面命令,使环境变量即时生效 
source /etc/profile
 
4. 验证
 
启动Tomcat  :
TOMCAT_HOME/bin/start.sh 
more TOMCAT_HOME/logs/catalina.out

看到类似这样的信息

  1. Jul 20, 2011 15:27:32 PM org.apache.catalina.core.AprLifecycleListener init
  2. INFO: Loaded APR based Apache Tomcat Native library 1.1.20.

就证明 apr 启动成功了。

 
转自:http://pengranxiang.iteye.com/blog/1128905

为 Tomcat 安装 apr的更多相关文章

  1. Tomcat 安装APR的有关问题

    Tomcat 安装APR的问题APR.APR-util.APR-iconv安装都正常apr安装命令:./configuremakemake install apr-util./configure -- ...

  2. tomcat安装apr优化

    APR是apache的一个linux操作系统级优化库,可以在tomcat中使用操作系统级native调用大大提高并发处理效率 先安装前置依赖: yum install -y apr-devel ope ...

  3. tomcat安装apr报错解决

    参考http://www.cnblogs.com/nuccch/p/7598361.html 1.no c complie 安装gcc解决 2.rm: cannot remove `libtoolT' ...

  4. 为tomcat 安装 native 和配置apr

    yum install -y apr-devel openssl-devel gcc 安装native cd /lxyy/tomcat7/bin tar zxvf tomcat-native.tar. ...

  5. 安装Tomcat的Apr

    转:http://www.cnblogs.com/littlehb/archive/2013/04/02/2994785.html 安装Tomcat的Apr,提升性能 发现 Tomcat 可以用 Ap ...

  6. centos6.3(64位) 安装apr

    安装apr来提高tomcat 的可伸缩性和性能 ? 1 cd /usr/local/ 1  下载apr 和 apr-util最新版 ? 1 2 3 wget  http://apache.fayea. ...

  7. 转载--tomcat整合apr

    原文地址: http://zhaosheng.wolf.blog.163.com/blog/static/115304589201212845341723/ APR(Apache Portable R ...

  8. Centos下Tomcat 安装Apache Portable Runtime

    APR(Apache Portable Runtime)是一个高可移植库,它是Apache HTTP Server 2.x的核心. APR有很多用途,包括访问高级IO功能(例如sendfile,epo ...

  9. Tomcat 使用apr优化

    最近业务服务器出现了一些问题,Nginx傲娇了,准备把加Nginx插件上的一些处理逻辑扔到后端的Tomcat的业务处理里面去,考虑到tomcat目前本来就压力山大,所以弄了弄apr库来优化tomcat ...

随机推荐

  1. HBase(二)CentOS7.5搭建HBase1.2.6HA集群

    一.安装前提 1.HBase 依赖于 HDFS 做底层的数据存储 2.HBase 依赖于 MapReduce 做数据计算 3.HBase 依赖于 ZooKeeper 做服务协调 4.HBase源码是j ...

  2. Linux的bash快捷键

    Ctrl-A 相当于HOME键,用于将光标定位到本行最前面 Ctrl-E 相当于End键,即将光标移动到本行末尾 Ctrl-B 相当于左箭头键,用于将光标向左移动一格 Ctrl-F 相当于右箭头键,用 ...

  3. python中发送邮件各种问题

    其实问题主要集中的QQ企业邮箱中,特别坑爹...代码如下: from email.mime.multipart import MIMEMultipart from email.mime.base im ...

  4. hdoj1171 Big Event in HDU(01背包 || 多重背包)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1171 题意 老师有一个属性:价值(value).在学院里的老师共有n种价值,每一种价值value对应着 ...

  5. java.lang.ClassNotFoundException: net.sf.ezmorph.Morpher

    java.lang.ClassNotFoundException: net.sf.ezmorph.Morpher 出现以上异常,可能是使用Json缺少ezmorph包: 以下是Json常用的包:ezm ...

  6. php7的新特性

    新增操作符1.??$username = $_GET['user'] ?? '';$username = isset($_GET['user']) ? $_GET['user'] : 'nobody' ...

  7. QTableView和QTableWidget翻页功能实现

    主要使用QTableView和QTableWidget中的三个函数实现 QTableView::verticalScrollBar()->setSliderPosition():  //设置当前 ...

  8. java main class not found

    1.确保 所有jar都存在, 清理所有不存在的jar 2.确保src以外没有java类

  9. 【SQL】180. Consecutive Numbers

    Write a SQL query to find all numbers that appear at least three times consecutively. +----+-----+ | ...

  10. iOS Sprite Kit教程之场景的切换

    iOS Sprite Kit教程之场景的切换 Sprite Kit中切换场景 每一个场景都不是单独存在的.玩家可以从一个场景中切换到另外一个场景中.本小节,我们来讲解场景切换.在每一个游戏中都会使用到 ...