tomcat优化

安装过程就不多说了,本次主要说明我在实际工作中的一些优化。   

1,修改tomcat的运行模式,常见的有 bio,nio, apr三种   

我选择的apr模式,这种对tomcat的性能有较大提高.

a:可以根据压力测试工具来进行测试观察。(其实我没对修改apr模式后压测,我直接问百度的)

b:重新启动tomcat后,在catalina.out中可以看到启动消耗了多少时间,改成apr模式后时间更短   

好,现在开始安装:  

先安装 apr

tar xzf apr-1.5.2.tar.gz  

cd apr-1.5.2

./configure –prefix=/usr/local/apr 

#如果有报一个不能rm的错,可以把configure中的 RM='$RM'改为RM='$RM  -f'     

make  

sudo make install   

 

再安装 apr-iconv  

tar xzf apr-iconv-1.2.1.tar.gz   

cd apr-iconv-1.2.1   

./configure –prefix=/usr/local/apr-iconv –with-apr=/usr/local/apr   

make  

sudo make install    

 

 

然后安装 apr-util   

 

tar xzf apr-util-1.5.4.tar.gz 

cd apr-util-1.5.4

./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr –with-apr-iconv=/usr/local/apr-iconv/bin/apriconv     

make   

sudo make install      

最后安装 tomcat-native

进入tomcat安装目录下面的bin目录下:

cd /usr/local/tomcat/bin/    

tar xzf tomcat-native.tar.gz  

cd tomcat-native-1.2.5-src/native

./configure –with-apr=/usr/local/apr –with-java-home=/usr/java/latest   

make   

sudo make install

添加环境变量

vi /etc/profile #在文件末尾处添加下面的变量 

 

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib

然后执行下面命令,使环境变量即时生效 

source /etc/profile    

然后重启tomcat服务器,去catalina.out 中看到是否有如下内容:

 Loaded APR based Apache Tomcat Native library 1.2.5 using APR version 1.5.2.   

 "http-apr-8080"

 

 如果日志中有报这样的错误: failed to initialize the sslengine 

 做如下修改:   

 <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="off" />   

#############################################

2,关闭用不到的日志 (视自己情况而定)   

vim /usr/local/tomcat/conf/logging.properties     

blob.png       

3,最好不要使用多虚拟主机,Tomcat 是多线程,共享内存,任何一个虚拟主机中的应用出现崩溃,会影响到所有应用程序。防止因为一个虚拟主机出问题而影响其他虚拟主机。可以用多实例,每个站点一个实例,采用多个实例方式虽然开销比较大,但保证了应用程序隔离与安全      


4,  

隐藏tomcat版本:   

先来看一下网页上故意输错一个url会显示如下的tomcat版本信息:

blob.png       

在lib目录下手动创建一个文件:   

mkdir -p org/apache/catalina/util   

cd  org/apache/catalina/util    

vim ServerInfo.properties   添加如下内容:  

server.info= welcome to kongzhong.com     

然后重新tomcat,再此刷新页面就会看到修改后的版本信息   

有的公司可能自定义了404页面,可以忽略此优化项

blob.png   


5,应用程序安全 

server.xml中修改下面的设置:

关闭war自动部署 unpackWARs="false" autoDeploy="false"。防止被植入木马等恶意程序

关闭 reloadable="false" 也用于防止被植入木马       

 

6,关闭DNS反向查询
<Connector port=8080 中加入如下参数

enableLookups="false"

 

7,注释掉 tomcat-user.xml 里面的用户 


###########################################   


还有很多优化项,比如jvm调优,maxThreads 调优,这些等以后再补充。现在该下班了!

原创文章,作者:Net-18-黑人,如若转载,请注明出处:http://www.178linux.com/20710

(1)
Net-18-黑人Net-18-黑人
上一篇 2016-06-28 11:37
下一篇 2016-06-28 11:37

相关推荐

  • Linux基础之—用户和组管理

    导言:   我们在使用计算机资源时为了资源的合理规划和利用,同时为了实现更好的管理,需要在计算机里有一个使用资源的凭证,这个凭证就是用户,下面就来介绍Linux用户和组管理。 1.资源分派:     资源的分派可以分为三个步骤,分别是    (1)认证(Authertication)   &nbsp…

    Linux干货 2016-08-04
  • Nagios

    一、Nagios简介   Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。 Nagios原名为NetSaint,由Ethan Galstad开发并维护至今…

    2017-12-20
  • Linux基础命令 2017-07-12日课

    bc, lscpu, free, dd, rpm, lsblk, ldd, file, hexdump, uname, sha1sum, sha256sum, md5sum bc an arbitrary precision language scale=NUM ; precision quit lscpu display information about…

    Linux干货 2017-07-12
  • 基于haproxy实现wordpress动静分离

    环境:centos 6.8 注:此处省略对于各服务器的IP配置。 一:图示讲解      用户访问vip,通过haproxy代理得到服务器的资源。此架构下基于keepalived对haproxy做负载均衡(此种两种软件装在同一台服务器),基于haproxy对Nginx和apache做负载均衡,Nginx和Apache使用共享存储…

    2017-05-18
  • 位置变量$1,$2,$@,$*,$#详解

    位置变量: 位置变量实际是属于系统预定义变量的一种,不能修改变量名,同时作用也是固定的,也不能新增的变量,只能修改变量的值。     常用的位置参数变量        $0代表命令本身,$1-$9代表第一到第九个参数,十以上的参数需要用大括号括起来,比如${11}.     该变…

    Linux干货 2016-08-18
  • 马哥教育网络班21期+第三周课程练习

    列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登陆多次,只显示一次即可。 ~]# who|cut -d" " -f1|sort -u 2  取出最后登录当前系统的用户的相关信息。    ~]# id `last|head&nbs…

    Linux干货 2016-07-29

评论列表(1条)

  • stanley
    stanley 2016-06-28 11:38

    文章有待提高呀~