增加Tomcat最大连接数
Posted 池鱼i_
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了增加Tomcat最大连接数相关的知识,希望对你有一定的参考价值。
使用场景
我在做完一个XXX项目后,测试时发现并发数量增加到一定程度就会很卡,于是我想到了是不是tomcat最大连接数设置有限制.果不其然,配置文件中最大值才500,于是我更改了最大连接数,根据业务我修改了连接数为2000,完美的解决了这个问题;
修改方法在conf/service.xml中默认值
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="1500"
minSpareThreads="30" maxSpareThreads="75" enableLookups="false"
redirectPort="8443" acceptCount="100" connectionTimeout="20000"
disableUploadTimeout="true" />,修改maxthreads的值即可
tomcat进行gzip压缩从而降低网络传输量
tomcat 压缩设置tomcat压缩gzip启用
HTTP 压缩可以大大提高浏览网站的速度,它的原理是,
在客户端请求服务器对应资源后,从服务器端将资源文件压缩,
再输出到客户端,由客户端的浏览器负责解压缩并浏览。
相对于普通的浏览过程html ,CSS,javascript , Text ,
它可以节省60%左右的流量。更为重要的是,它可以对动态生成的,
包括CGI、php , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,
压缩效率也很高。
启用tomcat 的gzip压缩
要使用gzip压缩功能,你需要在Connector节点中加上如下属性
记住来源:http://www.qi788.com/info-42.html
compression="on" 打开压缩功能
compressionMinSize="50" 启用压缩的输出内容大小,默认为2KB
noCompressionUserAgents="gozilla, traviata" 对于以下的浏览器,不启用压缩
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 哪些资源类型需要压缩
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" executor="tomcatThreadPool" URIEncoding="utf-8"
compression="on"
compressionMinSize="50" noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
memcached的介绍
memcached是一个用C语言开发的分布式的缓存,内部基于类似hashMap的结构。它的优点是协议简单,内置内存存储,并且他的分布式算法是在客户端完成的,不需要服务器端进行通信,我们当时在做项目的时候因为考虑到项目的高可用性高扩展性,因此在服务器部署方面采用了apache+jk+tomcat这种负载均衡的方式,但是也带来了一个问题就是session共享的问题,虽然可以通过session复制来解决这个问题,但是在性能方面存在缺陷,所以最后我们采用了用memcached来存储session,这样既解决了session共享问题,也解决了session复制那种方式所产生的性能问题。
了解(不必主动说,但别人问的话一定要知道)
memcached是以KEY-VALUE的方式进行数据存储的,
KEY的大小限制:Key(max)<=250个字符;
VALUE在存储时有限制:Value(max)<= 1M;
根据最近最少使用原则删除对象即LRU.
memcached默认过期时间:ExpiresTime(max)= 30(days)
以上是关于增加Tomcat最大连接数的主要内容,如果未能解决你的问题,请参考以下文章