栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

linux 下编译 tomcat native

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux 下编译 tomcat native

文章目录

一、tomcat native 是什么?二、tomcat 运行的三种模式三、使用过程

1. 环境准备2. tomcat-native 安装编译3. 指向本地库文件 四、验证总结


一、tomcat native 是什么?

Tomcat Native 是一个利用 APR 来提升Tomcat性能的本地API,底层是用 JNI 的原理来实现的。他是一个可选的库,默认是不使用的,可以通过编译构建出库文件,在tomcat的配置指向并使用库文件,从而提升Tomcat性能。

二、tomcat 运行的三种模式

很多人不清楚 APR 是什么?

APR(Apache portable Run-time libraries,Apache可移植运行库),主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。

听不懂没关系,下面直接简要介绍下 tomcat 包含的三种运行模式,和 tomcat 中 APR 模式到底是什么意思:

    BIO
    bio(blocking I/O),阻塞式I/O,表示Tomcat使用的是传统的Java I/O操作(即java.io包及其子包)。该模式运行性能最低,在早期,tomcat6 及之前,只有这一种运行模式。

    NIO
    nio(non-blocking I/O)非阻塞式I/O,他是一个基于缓冲区来操作的,比传统I/O操作(bio)发挥更好的并发运行性能。在 tomcat6 之后提供了nio的实现,但默认模式仍然是bio,而在tomcat8 以后默认模式就是nio

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

三、使用过程 1. 环境准备

本片文章是在 linux 环境下使用 tomcat native,他依赖 gcc 、 APR

依赖环境和库文件的安装:

yum install gcc

yum install apr

yum install apr-devel

yum install apr-util
2. tomcat-native 安装编译

下载 tomcat-native 的源码包 下载连接
注意:Linux 环境请下载 tar.gz 后缀的文件,该 tomcat-native 版本我是对应 tomcat 9.0.58 的解压缩

tar -zxvf tomcat-native-1.2.31-src.tar.gz

编译
进去解压的 tomcat-native 的 native 目录

./configure && make && make install
3. 指向本地库文件

上面的步骤最后在目录 /usr/local/apr/lib 下生成了本地库文件(如果没有就代表上面步骤失败了)
我们要想 tomcat 启动使用 APR模式,还需要修改配置文件,使 tomcat 以 APR 模式启动,并且在启动时可以读取到刚才生成的本地库文件。

修改 tomcat 的 conf 下的配置文件 server.xml


将上面的替换成下面的


指定tomcat启动的本地库读取(3种方式)

    拷贝过去系统库,因为在 Linux 下 tomcat 启动也会去读取系统库 /usr/lib/
cp /usr/local/apr/lib/libtcnative* /usr/lib/  

我是使用这种方式,下面两种方式大家可以自行百度解决

    配置环境变量指向/usr/local/apr/lib

    还可以指定tomcat启动参数,指定java.library.path

四、验证

完成上面的步骤,已经搭建好 tomcat 的 APR 模式启动了
正常启动 tomcat 可以看到下面截图的提示:

总结

欢迎指出我的错误!

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/785528.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号