CentOS系统下Tomcat的优化
一、JVM内存优化(线程优化)

vim ./bin/catalina.sh
在catalina.sh文件中添加以下配置:
JAVA_OPTS="-server -Xms128m -Xmx128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -XX:MaxNewSize=32m"
观察配置内容是否生效:
- 首先启动tomcat,然后查看tomcat进程编号:
ps -ef|grep tomcat
- 然后查看tomcat实际内存信息,通过查看内存信息判断配置是否成功:(进程号由上一步获取)
jmap -heap 进程号

二、Connector优化


三、安装配置APR
tomcat连接的三种模式:
BIO:最稳定最老的连接器,使用阻塞形式处理Request请求
NIO:使用java的异步IO技术,进行非阻塞形式处理Request请求
APR:原生C语言编写的非堵塞I/O,目前性能最理想
在安装APR之前需要安装APR环境的依赖包:
yum install -y expat expat-devel
导入apr三个安装包至centos系统某个文件夹下:

APR的安装步骤:
1.apr的安装
- 1.1 解压apr-1.6.3.tar.gz至安装目录
- 1.2 执行命令:
./configure -prefix=/usr/local/apr
make & make install

2.apr-iconv的安装
- 2.1 解压apr-iconv-1.2.2.tar.gz至安装目录
- 2.2 执行命令:
./configure -prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr
make & make install
3.apr-util的安装
- 3.1 解压apr-util-1.6.1.tar.gz至安装目录
- 3.2执行命令:
./configure -prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apriconv=/usr/local/apr-iconv
make & make install
4.安装tomcat-native
- 4.1 解压当前tomcat的bin目录下的tomcat-native.tar.gz

- 4.2 进入native目录安装:
./configure --with-apr=/usr/local/apr
make & make install
5.修改/bin/calatina.sh,配置apr影响的范围,设置只对当前Tomcat有影响
LD_LIBRAEY_PATH=$LD_LIBRAEY_PATH:/usr/local/apr/lib export LD_LIBRAEY_PATH
6.修改/conf/server.xml

可以通过安装压测工具来测试:
yum install httpd-tools
帮助信息:
ab --help
测试:
ab -n 1000 -c 100 http测试链接
CentOS系统下Tomcat的优化的更多相关文章
- CentOS系统下搭建tomcat服务器
下载相应的linux版jdk和tomcat,本文讲解jdk版本jdk-7u79-linux-x64.tar.gz,tomcat版本apache-tomcat-7.0.69.tar.gz [配置jdk] ...
- CentOS7.4 系统下 Tomcat 启动慢解决方法
CentOS7.4 系统下 Tomcat 启动慢解决的方法 首先查看日志信息,查看因为什么而启动慢 在CentOS7启动Tomcat时,启动过程很慢,需要几分钟,经过查看日志,发现耗时在这里:是s ...
- Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因
原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...
- CentOS系统下Redis安装和自启动配置的步骤
相信大家都知道Redis是一个C实现的基于内存.可持久化的键值对数据库,在分布式服务中常作为缓存服务.所以这篇文章将详细介绍在CentOS系统下如何从零开始安装到配置启动服务.有需要的可以参考借鉴. ...
- CentOS系统下安装python3+Django
转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...
- Sysbench Sysbench在centos系统下的安装
Sysbench在centos系统下的安装 by:授客 QQ:1033553122 测试环境: CentOS-7-x86_64-DVD-1503-01.iso 下载地址: http:/ ...
- Linux系统下tomcat的配置
Linux系统下tomcat的配置 完成后可以输入命令查看日志文件: 最后进入网页测试下吧: 可以出来这个网页就好了
- Centos系统下Docker的安装
一.检查内核版本 安装Docker,需要linux内核大于3.10 使用uname -r 来检查 二. Centos系统下Docker的安装 1. 安装需要的软件包 yum install -y yu ...
- CentOS系统下的数据盘挂载
此教程适用系统:Linux(CentOS,Debian,Ubuntu,Fedora) 通常新开通的Linux云服务器数据盘都未做分区和格式化.在进行数据盘挂载之前我们要先进行分区以及格式化操作.注意, ...
随机推荐
- Es6请求封装
function registryToast(){ vue.prototype.$toast=showToast } export default registryToast import './ ...
- 05_Nginx日志分析
如果不进行过滤,ES中存储的Nginx的日志是整行日志,在Kibana页面中只能查看到整行的日志,并没有其他太多的价值,所以我们需要对日志进行分割过滤,更有利于进行日志的分析. 学习本章需要具备一定的 ...
- wepy框架入门
安装 wepy 命令行工具. npm install wepy-cli -g 在开发目录生成开发DEMO. wepy new myproject 开发实时编译. wepy build --watch ...
- 带你了解HTTP协议(一)
本篇文章篇幅比较长,先来个思维导图预览一下. 一张图带你看完本篇文章 一.概述 1.计算机网络体系结构分层 计算机网络体系结构分层 2.TCP/IP 通信传输流 利用 TCP/IP 协议族进行 ...
- windows server2012 搭建.netcore+nginx+nssm运行环境
1.linux+.netcore+sqlserver的坑 linux不支持访问sqlserver2008及以下的版本(由于System.Data.SqlClient.dll的限制.windows上面访 ...
- ansible 任务流程控制
一.任务委托 默认情况下,ansible的所有任务都是在指定的机器上运行的,当在一个独立的群集环境中配置时,但是只想操作其中的某一台主机,或者在特定的主机上运行,此时就需要用到ansible的任务委托 ...
- MAC常用快捷键 基本常用的都整理在这里了
写在前面Mac系统中有几个比较特殊的功能键,和Win系统的区别也主要在这里比如在Win系统中我们常用的Ctrl键,在Mac系统中对应的不是长得比较像的Cnotrol,而是Command键,貌似也是Ma ...
- PyTorch Tutorials 2 AUTOGRAD: AUTOMATIC DIFFERENTIATION
%matplotlib inline Autograd: 自动求导机制 PyTorch 中所有神经网络的核心是 autograd 包. 我们先简单介绍一下这个包,然后训练第一个简单的神经网络. aut ...
- usb 设备 复位
How to Reset USB Device in Linux by ROMAN10 on MAY 4, 2011 · 9 COMMENTS USB devices are anywhere n ...
- poj2456
Aggressive cows Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 24979 Accepted: 11594 ...