`
g21121
  • 浏览: 686624 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux下tomcat优化

阅读更多

一、安装tomcatapr

1. 下载tomcat apr,下载地址:http://apr.apache.org/,下载apr-util-1.3.11.tar.gz,apr-iconv-1.2.1.tar.gz,apr-1.4.4.tar.gz。

2. 解压apr,运行命令:

tar -zxvf apr-util-1.3.11.tar.gz 
tar zxvf apr-iconv-1.2.1.tar.gz 
tar zxvf apr-1.4.4.tar.gz

 

 3. 安装apr,运行命令:

tar zxvf apr-1.4.2.tar.gz 
cd apr-1.4.2 
./configure --prefix=/usr/local/www/apr 
make 
make install

 4. 安装apr-iconv:

tar -zxvf apr-iconv-1.2.1.tar.gz 
cd apr-iconv-1.2.1 
./configure --prefix=/usr/local/www/apr-iconv --with-apr=/usr/local/www/apr 
make
make install

 5. 安装apr-util:

tar zxvf apr-util-1.3.9.tar.gz 
cd apr-util-1.3.9 
./configure --prefix=/usr/local/www/apr-util --with-apr=/usr/local/www/apr --with-apr-iconv=/usr/local/www/apr-iconv/bin/apriconv 
make 
make install

 6. 下载tomcat-native,下载网址:http://tomcat.apache.org/download-native.cgi

 7. 上传tomcat-native 至tomcat目录下的bin目录中,运行命令:

chmod +x tomcat-native-1.1.20-src.tar.gz

 8.  解压tomcat-native,运行命令:

tar –zxvf tomcat-native-1.1.20-src.tar.gz

 9.  进入native目录,运行命令:

cd tomcat-native-1.1.20-src/jni/native

10.安装tomcat-native,运行命令:

./configure --with-apr=/usr/local/www/apr --with-java-home=/usr/local/java 
make 
make install

11.修改profile文件,添加以下内容:

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

二、Tomcat内存设置
进入tomcat目录下的bin目录,运行命令:

vi startup.sh

  添加以下代码,保存退出,重新启动tomcat。

JAVA_OPTS=’-Xms256m -Xmx1024m’

Xms:初始化内存

Xmx:最大使用内存

三、修改tomcat配置文件

打开tomcat/conf/目录

 

修改server.xml文件:

1.找到“<Server port="8005" shutdown="SHUTDOWN">”

修改为:

<Server port="8995" shutdown="shut_down_tc"> 

端口和关闭命令根据情况修改,目的是防止别人调用默认关闭命令来关闭tomcat。

2.找到“<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />”。

修改为:

<!-- <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> -->

注释掉tomcat的虚拟机内存监听器,因为这个监听器很有可能误报内存消耗过大或内存溢出等情况。

3.修改tomcat并发连接数

tomcat6.0 默认并发数为200,查看方法和JVM一样,查看http-8080选项

Max threads: 200

vi /usr/local/www/tomcat/conf/server.xml

 修改前:

  <Connector port="8080" protocol="HTTP/1.1" redirectPort="8443" connectionTimeout="20000" />

 修改后: 

<Connector port="8080" 
protocol="HTTP/1.1" 
maxHttpHeaderSize="8192" 
useBodyEncodingForURI="true" 
maxThreads="1000"
 redirectPort="8443" 
enableLookups="false" 
compression="on" 
compressionMinSize="2048" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 
connectionTimeout="20000" 
disableUploadTimeout="true" /> 

 

port Tomcat服务器监听的端口号。

maxHttpHeaderSize Http的Header的最大限制。

enableLookups="false" 使用允许DNS查询,通常情况下设置为false。

redirectPort 服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号。

maxThreads Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。

acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。

connectionTimeout 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。

minSpareThreads Tomcat初始化时创建的线程数。

maxSpareThreads 一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。

compression="on" 打开压缩功能

compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB

compressableMimeType 压缩类型

 

4.修改日志文件目录

找到“<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
               prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>”

把注释去掉,directory修改为自己指定的目录

 

修改tomcat-users.xml文件:

1.打开tomcat-users.xml文件,找到“<tomcat-users>”标签,在<tomcat-users>下配置了几个tomcat用户,在一般情况下这些用户是无用的,可以全部删除,只留下<tomcat-users></tomcat-users>空配置,当如果用户想使用tomcat的管理功能就需要配置一个admin用户,否则无法使用管理台。

 

修改web.xml文件:

打开web.xml文件,找到web-app标签中的version="2.4" 可以根据情况改修改,如果tomcat为5.x版本很有可能不支持jstl表达式,所以这时就需要改成2.4。

找到:

<servlet> 
  <servlet-name>default</servlet-name> 
  <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> 
  <init-param> 
    <param-name>debug</param-name> 
    <param-value>0</param-value> 
  </init-param> 
  <init-param> 
    <param-name>listings</param-name> 
    <param-value>false</param-value> 
  </init-param> 
  <load-on-startup>1</load-on-startup> 
</servlet> 

 

这个servlet配置,把listings的值改成false,禁止在没有找到页面的情况下以列表显示所有页面。

2
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics