前言Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP 程序的首选 。相信大家对于 Tomcat 已经是非常熟悉了,本篇将介绍tomcat的常见优化 。那么为什么要对tomcat进行优化呢 。因为Tomcat默认参数是为开发环境制定,而非适合生产环境,尤其是内存和线程的配置,默认都很低,容易成为性能瓶颈 。相信大家看完这篇博客,会有一定的收获 。

文章插图
Tomcat连接器协议优化Tomcat 连接器的三种方式: bio、nio 和 apr,三种方式性能差别很大,apr 的性能最优, bio 的性能最差 。而 Tomcat 7 使用的 Connector 默认就启用的 Apr 协议,但需要系统安装 Apr 库,否则就会使用 bio 方式 。
nio如何配置进入到tomcat的server.xml找到connector 。更改其中的protocol属性即可 。

文章插图
apr如何配置apr的配置需要安装依赖
yum -y install openssl-develyum -y install apr-devel安装之后,去tomcat官网下载native组件,native可以看成是tomcat和apr交互的中间环节,下载地址是:http://tomcat.Apache.org/download-native.cgi 这里下载最新的版本1.2.10解压并安装
tar -xvzf tomcat-native-1.2.10-src.tar.gzcd tomcat-native-1.2.10-src/native/./configure至此apr安装成功,进入server.xml 。更改协议将默认的protocol="HTTP/1.1"修改为protocol="org.apache.coyote.http11.Http11AprProtocol" 。
Tomcat配置文件方面的优化配置文件方面是我们主要的tomcat优化的地方 。我们将常见的优化直接在配置文件中放置 。
- connectionTimeout="30000":网络连接超时,单位:毫秒,设置为 0 表示永不超时,这样设置有隐患的 。通常可设置为 30000 毫秒,可根据检测实际情况,适当修改
- enableLookups="false":是否反查域名,以返回远程主机的主机名,取值为:true 或 false,如果设置为false,则直接返回IP地址,为了提高处理能力,应设置为 false 。
- disableUploadTimeout="false":上传时是否使用超时机制 。
- connectionUploadTimeout="150000":上传超时时间,毕竟文件上传可能需要消耗更多的时间,这个根据你自己的业务需要自己调,以 使Servlet有较长的时间来完成它的执行,需要与上一个参数一起配合使用才会生效 。
- acceptCount="300":指定当所有可以 使用的处理请求的线程数都被使用时,可传入连接请求的最大队列长度,超过这个数的请求将不予处理,默认为100个 。
- keepAliveTimeout="120000":长连接最大保持时间(毫秒),表示在下次请求过来之前,Tomcat 保持该连接多久,默认是使用 connectionTimeout 时间,-1 为不限制超时 。
- maxKeepAliveRequests="1":表示在服务器关闭之前,该连接最大支持的请求数 。超过该请求数的连接也将被关闭,1表示禁用,-1表示不限制个数,默认100个,一般设置在100~200之间 。
- compression="on":是否对响应的数据进行 GZIP 压缩,off:表示禁止压缩;on:表示允许压缩(文本将被压缩)、force:表示所有情况下都进行压缩,默认值为off,压缩数据后可以有效的减少页面的大小,一般可以减小1/3左右,节省带宽 。
- compressionMinSize="2048":表示压缩响应的最小值,只有当响应报文大小大于这个值的时候才会对报文进行压缩,如果开启了压缩功能,默认值就是2048 。
- compressableMimeType="text/html,text/xml,text/JAVAscript,text/css,text/plain,image/gif,image/jpg,image/png":压缩类型,指定对哪些类型的文件进行数据压缩 。
<Connector executor="tomcatThreadPool"port="8080" protocol="HTTP/1.1"URIEncoding="UTF-8"connectionTimeout="30000" //网络连接超时,单位:毫秒,设置为 0 表示永不超时,这样设置有隐患的 。通常可设置为 30000 毫秒,可根据检测实际情况,适当修改enableLookups="false"//是否反查域名,以返回远程主机的主机名,取值为:true 或 false,如果设置为false,则直接返回IP地址,为了提高处理能力,应设置为 false 。disableUploadTimeout="false"//上传时是否使用超时机制 。connectionUploadTimeout="150000"//上传超时时间,毕竟文件上传可能需要消耗更多的时间,这个根据你自己的业务需要自己调,以使Servlet有较长的时间来完成它的执行,需要与上一个参数一起配合使用才会生效 。acceptCount="300"//指定当所有可以使用的处理请求的线程数都被使用时,可传入连接请求的最大队列长度,超过这个数的请求将不予处理,默认为100个 。keepAliveTimeout="120000"//长连接最大保持时间(毫秒),表示在下次请求过来之前,Tomcat 保持该连接多久,默认是使用 connectionTimeout 时间,-1 为不限制超时 。maxKeepAliveRequests="1"//表示在服务器关闭之前,该连接最大支持的请求数 。超过该请求数的连接也将被关闭,1表示禁用,-1表示不限制个数,默认100个,一般设置在100~200之间 。compression="on"//是否对响应的数据进行 GZIP 压缩,off:表示禁止压缩;on:表示允许压缩(文本将被压缩)、force:表示所有情况下都进行压缩,默认值为off,压缩数据后可以有效的减少页面的大小,一般可以减小1/3左右,节省带宽 。compressionMinSize="2048"//表示压缩响应的最小值,只有当响应报文大小大于这个值的时候才会对报文进行压缩,如果开启了压缩功能,默认值就是2048 。compressableMimeType="text/html,text/xml,text/JavaScript,text/css,text/plain,image/gif,image/jpg,image/png"//压缩类型,指定对哪些类型的文件进行数据压缩 。redirectPort="8443" />
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 直通车的优势 在优化直通车推广的地域时
- 户外游泳安全知识大全
- 茶产业开发四优化,中国茶产业发展研究报告发布
- 桂林旅游攻略大全 桂林旅游攻略推荐
- 欧式灯具品牌排行大全
- 中国国家地理标志产品名单大全(中),建议收藏
- 茶香砂锅腐乳肉的做法,茶树菇炒肉的做法大全
- 什么是生意参谋,如何利用生意参谋优化关键词? 生意参谋关键词分析在哪
- 茶树菇的家常做法,茶树菇炒肉的做法大全
- 在优化直通车推广的地域时,我们可以在生意参谋 在优化直通车推广的地域时
