安装软件包,之前可以用rpm -q 命令查看一下是否存在,如果有这两个软件包先卸载再重新安装
yum -y install apr apr-devel
拷贝Tomcat安装目录下的bin目录下的tomcat-native.tar.gz
[root@www ~]# ls /usr/local/apache-tomcat-8.5.40/bin/
bootstrap.jar                 daemon.sh                     startup.sh
catalina.bat                  digest.bat                    tomcat-juli.jar
catalina.sh                   digest.sh                     tomcat-native.tar.gz
catalina-tasks.xml            setclasspath.bat              tool-wrapper.bat
commons-daemon.jar            setclasspath.sh               tool-wrapper.sh
commons-daemon-native.tar.gz  shutdown.bat                  version.bat
configtest.bat                shutdown.sh                   version.sh
configtest.sh                 startup.bat                  
[root@www ~]# cp /usr/local/apache-tomcat-8.5.40/bin/tomcat-native.tar.gz  ./
然后解压进行编译安装
tar xf tomcat-native.tar.gz  
[root@www ~]# cd tomcat-native-1.2.21-src/native/
[root@www native]# ./configure --with-apr=/usr/bin/apr-1-config --with-java-home=/usr/local/java  && make && make install
..........
[root@www native]# vim /usr/local/apache-tomcat-8.5.40/bin/catalina.sh 
//修改Tomcat安装目录下的bin目录下的catalina.sh文件,添加: CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"
指定位置
vim /etc/profile
//修改/etc/profile重新声明变量,添加:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
vim /usr/local/apache-tomcat-8.5.40/conf/server.xml
//修改Tomcat的主配置文件server.xml,修改:  protocol=" ",改为APR
<Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"
               connectionTimeout="20000"
               redirectPort="8443" />
然后重启服务
Tomcat的工作模式有三种
Java BIO :同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事会造成不必要的线程开销
Java NIO:同步非阻塞,服务器实现一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理
Java AIO(也叫APR(NIO 2)):异步非阻塞,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理

tomcat-APR配置及三种工作模式简介的更多相关文章

  1. httpd2.4.6三种工作模式(如何配置),防止占用内存暴增的策略

    之前偷懒默认用yum安装了httpd.后来发现服务器内存暴增,一度达到75% 打开一看,好嘛后台休眠进程全是httpd. 重启之后再度访问发现内存还是稳步增长. [root@iz2ze3ayxs2yp ...

  2. Apache的三种工作模式及相关配置

    Apache的三种工作模式 作为老牌服务器,Apache仍在不断地发展,就目前来说,它一共有三种稳定的MPM(Multi-Processing Module,多进程处理模块).它们分别是 prefor ...

  3. VMWare提供了三种工作模式上网

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式. 1 ...

  4. VMWare三种工作模式 :bridge、host-only、nat

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式.这里 ...

  5. VMWare虚拟机网络的三种工作模式

    VMWare提供了三种工作模式: 1.bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器.在桥接模式下,需要手工为虚拟系 ...

  6. 转载-LVS的三种工作模式

    来源地址:http://www.uml.org.cn/zjjs/201211124.asp 1.lvs简介         lvs是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立 ...

  7. LVS集群的三种工作模式

    LVS的三种工作模式: 1)VS/NAT模式(Network address translation) 2)VS/TUN模式(tunneling) 3)DR模式(Direct routing) 1.N ...

  8. 2.LVS的三种工作模式_NAT模式

    1.LVS的三种工作模式 1)VS/NAT模式(Network address translation) 2)VS/TUN模式(tunneling) 3)DR模式(Direct routing) 1. ...

  9. LVS负载均衡(LVS简介、三种工作模式、十种调度算法)

    一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...

随机推荐

  1. Java8-Lock-No.04

    import java.util.HashMap; import java.util.Map; import java.util.concurrent.ExecutorService; import ...

  2. Oracle shell监控小脚本

    cat dba_cpu_monitor.sh   ##CPU Monitorh=`hostname`cpu_used=`top -b -d 1 -n 2 | grep Cpu | awk 'NR> ...

  3. [Luogu] 程序自动分析

    题面:https://www.luogu.org/problemnew/show/P1955 题解:https://www.zybuluo.com/wsndy-xx/note/1143858

  4. 【luogu1797】faebdc的烦恼-莫队

    题目背景 鸟哥(faebdc)自从虐暴NOIP2013以来依然勤奋学习,每天上各种OJ刷题,各种比赛更是不在话下.但这天他遇到了一点小小的麻烦……在一届“Orz鸟哥杯”上,题目是在是太多了!足有n道! ...

  5. Win内核原理与实现学习笔记3-windows系统结构

    1.概述 1.1windows采用了双模式(dual mode)结构来保护操作系统本身,以避免被应用程序的错误而波及.操作系统核心运行在内核模式(kernel mode)下,应用程序的代码运行在用户模 ...

  6. python 局域网文件互传

    PCa: import socket Sockin = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #新建socket Sockin.bind(( ...

  7. 银联刷卡POS机冲正

    冲正是为系统认为可能交易失败时采取的补救手法. 即一笔交易在终端已经置为成功标志,但是发送到主机的账务交易包没有得到响应,即终端交易超时,所以不确定该笔交易是否在主机端也成功完成,为了确保用户的利益, ...

  8. Mysql备份恢复方案解析

    1.全量备份和增量备份 1.1全量备份 就是对现有的数据进行全部备份,之前做的备份均可舍弃,以最新的全备为基点. a.全备所有数据库 Innodb引擎: [root@leader mysql]#mys ...

  9. servlet容器:jetty,Tomcat,JBoss

    一.几款servlet容器对比:jetty,Tomcat,JBoss 二.JBOSS相关问题解决 1.JBOSS下载安装 2.处理jboss-as-7.1.1.Final与jdk1.8及1.8以上版本 ...

  10. C#程序调用CMD执行命令,将参数传递给cmd.exe

    proc.StartInfo.Arguments = "/c ping 10.2.2.125"; C#程序调用CMD执行命令 将参数传递给cmd.exe的(Passing an a ...