tomcat APR模式配置

一、环境

操作系统:Ubutnu 14

ubuntu@ubuntu:~$ uname -a
Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

JDK 1.8

ubuntu@ubuntu:~$ java -version
java version "1.8.0_141"
Java(TM) SE Runtime Environment (build 1.8.0_141-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode)
ubuntu@ubuntu:~$ whereis java
java: /usr/local/java /usr/share/java

Tomcat 8.5.35

root@ubuntu:~# /var/www/demo/bin/version.sh
Using CATALINA_BASE: /var/www/demo
Using CATALINA_HOME: /var/www/demo
Using CATALINA_TMPDIR: /var/www/demo/temp
Using JRE_HOME: /usr/local/java/jre
Using CLASSPATH: /var/www/demo/bin/bootstrap.jar:/var/www/demo/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.35
Server built: Nov 3 2018 17:39:20 UTC
Server number: 8.5.35.0
OS Name: Linux
OS Version: 4.4.0-31-generic
Architecture: amd64
JVM Version: 1.8.0_141-b15
JVM Vendor: Oracle Corporation

二、安装

1. 安装编译需要的环境

$ sudo apt install gcc make

2. 安装 native 编译所需要的依赖包

# apache apr
$ sudo apt install libapr1-dev
# openssl,自带的 openssl版本较低,需要编译安装
$ wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
$ sudo mkdir /usr/local/openssl
$ tar zxf openssl-1.1.1a.tar.gz
$ ./config --prefix=/usr/local/openssl
$ make
$ sudo make install

3.下载安装native

$ wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/native/1.2.19/source/tomcat-native-1.2.19-src.tar.gz
$ cd tomcat-native-1.2.19-src/native/
$ ./configure --with-ssl=/usr/local/openssl
$ make
$ sudo make install

三、配置Tomcat

root@ubuntu:/var/www/demo# cat bin/setenv.sh
export JAVA_OPTS="$JAVA_OPTS -Djava.library.path=/usr/local/apr/lib"

<Connector port="8080"
protocol="org.apache.coyote.http11.Http11AprProtocol"
connectionTimeout="20000"
redirectPort="8443" />
...
<!--<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->

四、启动Tomcat

root@ubuntu:/var/www/demo# bin/catalina.sh run
.....
28-Jan-2019 15:55:09.140 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/var/www/demo/webapps/docs] has finished in [13] ms
28-Jan-2019 15:55:09.153 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-8080"]
28-Jan-2019 15:55:09.172 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 803 ms

附:编译方式安装apr

1. 安装编译需要的环境

$ sudo apt install -y gcc make  libtool  libexpat1-dev

2. 安装Apache Portable Runtime (apr)

官方地址:https://apr.apache.org/compiling_unix.html

编译安装apr

wget http://mirrors.shu.edu.cn/apache//apr/apr-1.6.5.tar.gz
tar zxf apr-1.6.5.tar.gz
cd apr-1.6.5/
./configure --prefix=/usr/local/apache-apr
make
sudo make install

编译安装apr-iconv

wget http://mirrors.shu.edu.cn/apache//apr/apr-iconv-1.2.2.tar.gz
tar zxf apr-iconv-1.2.2.tar.gz
cd apr-iconv-1.2.2/
./configure --prefix=/usr/local/apache-apr-iconv --with-apr=/usr/local/apache-apr
make
sudo make install

编译安装apr-util

wget http://mirrors.shu.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
ubuntu@ubuntu:~/apr-util-1.6.1$ ./configure --prefix=/usr/local/apache-apr-util --with-apr=/usr/local/apache-apr --with-apr-iconv=/usr/local/apache-apr-iconv/bin/apriconv
tar zxf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1/
make
sudo make install

3. 编译安装openssl

wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
$ sudo mkdir /usr/local/openssl
$ tar zxf openssl-1.1.1a.tar.gz
$ ./config --prefix=/usr/local/openssl
cd openssl-1.1.1a
$ make
$ sudo make install

4. 编译安装native

wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/native/1.2.19/source/tomcat-native-1.2.19-src.tar.gz
tar zxf tomcat-native-1.2.19-src.tar.gz
$ cd tomcat-native-1.2.19-src/native/
$ ./configure --prefix=/usr/local/native --with-ssl=/usr/local/openssl --with-apr=/usr/local/apache-apr/bin/apr-1-config
$ make
$ sudo make install

Tomcat 8.5 apr 模式配置的更多相关文章

  1. tomcat bio nio apr 模式性能测试

    转自:tomcat bio nio apr 模式性能测试与个人看法 11.11活动当天,服务器负载过大,导致部分页面出现了不可访问的状态.那后来主管就要求调优了,下面是tomcat bio.nio.a ...

  2. Spring Boot切换为APR模式

    Spring Boot内置了tomcat容器,直接运行Application就可以启动web服务器. 在tomcat中提供了三种方式:BIO.NIO.APR. BIO tomcat7以下的版本都是BI ...

  3. Tomcat在Linux服务器上的BIO、NIO、APR模式设置

    一.BIO.NIO.AIO 先了解四个概念: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写). 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时, ...

  4. Tomcat8 配置APR模式

    首先说明下tomcat connector运行的3中模式及区别: 1)bio 默认的模式,同步阻塞,性能非常低下,没有经过任何优化处理和支持. 2)nio  同步非阻塞,利用java的异步io护理技术 ...

  5. springboot使用tomcat apr模式

    因需项目对并发要求比较高.提高Tomcat效率.使用tomcat apr模式.今天在这记录下使用过程.apr全称为apache portable runtime.这里套用下wiki对apr的解释. T ...

  6. SpringBoot内嵌Tomcat开启APR模式(运行环境为Centos7)

    网上查到的一些springboot内嵌的tomcat开启apr的文章,好像使用的springboot版本较老,在SpringBoot 2.0.4.RELEASE中已经行不通了.自己整理了一下,供参考. ...

  7. tomcat优化之安装并配置apr库

    在谈到tomcat优化时,必然要说到apr库,这个库是C语言实现的,tomcat通过JNI方式使用该库可以大大提高性能. tomcat在使用apr时需要安装apr,apr-util和tomcat-na ...

  8. tomcat APR的配置

    Tomcat 可以使用 APR 来提供超强的可伸缩性和性能,更好地集成本地服务器技术. APR(Apache Portable Runtime) 是一个高可移植库,它是 Apache HTTP Ser ...

  9. TOMCAT开启APR模式

    Tomcat支持三种接收请求的处理方式:BIO.NIO.ARP. BIO模式:阻塞式I/O操作,表示Tomcat使用传统Java I/O操作.默认情况下,Tomcat7以下版本使用BIO模式运行,由于 ...

随机推荐

  1. HTTP content-type及POST提交数据方式

    Content-Type(内容类型),一般指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式.什么编码读取这个文件,这也是一些网页点击的结果却是一个文件 ...

  2. luogu P1125 笨小猴 x

    P1125 笨小猴 题目描述 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 这种方法的具体描述如下:假设max ...

  3. JS onclick中this用法

    当在dom元素中使用onclick绑定事件的时候,可以使用this来指向该元素对象. 打印输出的内容为: 所以可以通过该this对象来获取子元素 //通过element获取该对象下的一个audio标签 ...

  4. 小程序cover-view

    cover-view包裹的元素设置定位,元素内容长短会影响cover-view的位置,即使设置的left,top一致 最佳解决方法,就是给cover-view设置宽度

  5. 关于vsftpd连接出现“响应: 530 Permission denied”的坑

    在设置vsftpd.conf文件中的变量 anonymous_enable=YES 需要使用用户进行登录,如果conf文件内缺少下列三行中的任何一行都需要补充完整,不然就会出现 “响应: 530 Pe ...

  6. Android-Studio:Cannot reload AVD list

    Android-Studio:Cannot reload AVD list 今天用Android-Studio时点击"RUN"后出现如下错误,特此记录一下解决方案. Cannot ...

  7. USNews2018世界大学1250所排行榜

    USNews2018世界大学1250所排行榜(最全版) 中外学术情报<更多内容2017-10-27 09:00:00 10月24日,USNews发布2018世界大学排行榜,来自全球74个国家或地 ...

  8. Android.mk【转】

    本文转载自:http://android.mk/#simple Secrets of Android.mk Introduction to Android.mk: This document desc ...

  9. Linux内核调试方法总结之coredump

    什么是core dump? 分析core dump是Linux应用程序调试的一种有效方式,像内核调试抓取ram dump一样,core dump主要是获取应用程序崩溃时的现场信息,如程序运行时的内存. ...

  10. ORACLE Physical Standby DG 之switch over

    DG架构图如下: 计划,切换之后的架构图: DG切换: 主备切换:这里所有的数据库数据文件.日志文件的路径是一致的 [旧主库]主库primarydb切换为备库standby3主库检查switchove ...