深入剖析Tomcat性能优化与集群session共享

北京尚学堂旗下优效学院

《Tomcat性能优化与集群session共享》

公开课文档版本 视频版本wx:Nancy007001  备注:CSDN   免费获取

tomcat 运行模式优化

Tomcat Connector(Tomcat 连接器) 有 bio、nio、apr 三种运行模式

BIO模式

bio(blocking I/O),顾名思义,即阻塞式 I/O 操作,表示 Tomcat 使用的是传统的 Java I/O 操作 (即 java.io 包及其子包)。Tomcat 在默认情况下,就是以 bio 模式运行的。遗憾的是,就一般而言,bio 模式是三种运行模式中性能最低的一种。

配置Tomcat Manager

我们可以通过 Tomcat Manager 来查服务器的当前状态。

深入剖析Tomcat性能优化与集群session共享

 

访问入口在Tomcat默认首页或直接访问

在apache-tomcat-7.0.91conf目录下找到tomcat-users.xml

在<tomcat-users>节点中添加

<role rolename="manager-gui"/>

<user username="tomcat" password="tomcat" roles="manager-gui"/>

重启Tomcat 让配置文件生效

Tomcat服务器运行状态

观察server status 已经能看到Tomcat7.0.19默认已经是apr模式

深入剖析Tomcat性能优化与集群session共享

 

巴特,不要高兴的太早,默认的apr模式只在Windows版本的Tomcat中已经配置好了

那么在Linux系统中部署Tomcat后,会显示Bio模式

深入剖析Tomcat性能优化与集群session共享

 

NIO模式

nio(new I/O),是 Java SE 1.4 及后续版本提供的一种新的 I/O 操作方式 (即 java.nio 包及其子包)。Java nio 是一个基于缓冲区、并能提供非阻塞 I/O 操作的 Java API,因此 nio 也被看成是 non-blocking I/O 的缩写。它拥有比传统 I/O 操作 (bio) 更好的并发运行性能。

要让 Tomcat 以 nio 模式来运行也比较简单,我们只需要在 Tomcat 安装目录 / conf/server.xml 文件中将如下配置:

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

其中的 protocol 属性值改为 org.apache.coyote.http11.Http11NioProtocol 即可:

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"

connectionTimeout="20000"

redirectPort="8443" />

深入剖析Tomcat性能优化与集群session共享

 

APR模式

apr(Apache Portable Runtime/Apache 可移植运行时),是 Apache HTTP 服务器的支持库。你可以简单地理解为,Tomcat 将以 JNI 的形式调用 Apache HTTP 服务器的核心动态链接库来处理文件读取或网络传输操作,从而大大地提高 Tomcat 对静态文件的处理性能。

Tomcat apr 也是在 Tomcat 上运行高并发应用的首选模式。如果我们的 Tomcat 不是在 apr 模式下运行,在启动 Tomcat 的时候,我们可以在日志信息中看到类似如下信息:

信息: 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

部署方式:

1. 安装依赖

yum install -y apr apr-util apr-devel

2.编译安装tomcat-native

· 进入 apache-tomcat-7.0.91/bin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值