一、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的优化的更多相关文章

  1. CentOS系统下搭建tomcat服务器

    下载相应的linux版jdk和tomcat,本文讲解jdk版本jdk-7u79-linux-x64.tar.gz,tomcat版本apache-tomcat-7.0.69.tar.gz [配置jdk] ...

  2. CentOS7.4 系统下 Tomcat 启动慢解决方法

    CentOS7.4 系统下 Tomcat 启动慢解决的方法   首先查看日志信息,查看因为什么而启动慢 在CentOS7启动Tomcat时,启动过程很慢,需要几分钟,经过查看日志,发现耗时在这里:是s ...

  3. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  4. CentOS系统下Redis安装和自启动配置的步骤

    相信大家都知道Redis是一个C实现的基于内存.可持久化的键值对数据库,在分布式服务中常作为缓存服务.所以这篇文章将详细介绍在CentOS系统下如何从零开始安装到配置启动服务.有需要的可以参考借鉴. ...

  5. CentOS系统下安装python3+Django

    转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...

  6. Sysbench Sysbench在centos系统下的安装

    Sysbench在centos系统下的安装   by:授客 QQ:1033553122       测试环境: CentOS-7-x86_64-DVD-1503-01.iso 下载地址: http:/ ...

  7. Linux系统下tomcat的配置

    Linux系统下tomcat的配置 完成后可以输入命令查看日志文件: 最后进入网页测试下吧: 可以出来这个网页就好了

  8. Centos系统下Docker的安装

    一.检查内核版本 安装Docker,需要linux内核大于3.10 使用uname -r 来检查 二. Centos系统下Docker的安装 1. 安装需要的软件包 yum install -y yu ...

  9. CentOS系统下的数据盘挂载

    此教程适用系统:Linux(CentOS,Debian,Ubuntu,Fedora) 通常新开通的Linux云服务器数据盘都未做分区和格式化.在进行数据盘挂载之前我们要先进行分区以及格式化操作.注意, ...

随机推荐

  1. spring boot, 容器启动后执行某操作

    常有在spring容器启动后执行某些操作的需求,现做了一个demo的实现,做一下记录,也希望可以给需要的同学提供参考. 1.spring启动后,以新线程执行后续需要的操作,所以执行类实现Runnabl ...

  2. AcWing P379 捉迷藏 题解

    Analysis 这道题因为我们要给能到达的两个点都连上,又由于n<=200,所以我们可以用n³的传递闭包来建边,再用匈牙利算法来求二分图最大点独立集. #include<iostream ...

  3. NetworkX系列教程(10)-算法之一:最短路径问题

    小书匠Graph图论 重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定先把图 ...

  4. Java的 「 “ 结构体 ”」 与 「 “ 自定义排序 ” 」

    Java里面的结构体可以靠class来实现,如果相对结构体进行排序,需要写一个接口,class 自定义的名字 implements Comparator<结构体(自己定义的class类的名字)& ...

  5. Spring-Cloud-Eureka实例

    SpringCloud实现服务注册中心 注册中心这么关键的服务,如果是单点话,遇到故障就是毁灭性的.在一个分布式系统中,服务注册中心是最重要的基础部分,理应随时处于可以提供服务的状态.为了维持其可用性 ...

  6. Nexus 3搭建及备份恢复

    Nexus 3搭建 官网下载相应的软件版本:Nexus官网 配置仓库存放地址 # tar xf xxxx # more bin/nexus.vmoptions -Xms500M -Xmx500M -X ...

  7. Arts打卡第10周

    Algorithm.主要是为了编程训练和学习. 每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard). 进行编程训练,如果不训练你看再多的算法书,你依然不 ...

  8. Windows下的apache maven安装与配置

    去到官网http://maven.apache.org/download.cgi下载压缩包我选择的是二进制zip压缩文件. 解压并配置压缩文件的目录到MAVEN_HOME环境变量,添加解压文件下的bi ...

  9. 教你阅读 Cpython 的源码(一)

    目录 第一部分-介绍 Cpython 源代码中有什么? 如何编译 Cpython 代码 编译器能做什么? 为什么 Cpython 是用 C 语言而是 Python 编写的? Python 语言的规范 ...

  10. c++比例-libcurl多线程并发时的core【转载】

    转自: https://www.cnblogs.com/edgeyang/articles/3722035.html 浅析libcurl多线程安全问题 背景:使用多线程libcurl发送请求,在未设置 ...