温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

tomcat的一些常用的优化技巧

发布时间:2020-07-14 01:52:48 来源:网络 阅读:1155 作者:错丶 栏目:开发技术

这次介绍的是如何简单的优化Tomcat服务器,如果用户并发量小,系统可能不会出问题,但是并发量大时,系统反应速度迅速下降,由于不了解原因拼命在自己的应用中寻找问题,从而浪费了宝贵的时间。下面来看看Tomcat是如何优化的。

(1)屏蔽DNS查询

Web应用程序可以通过Web容器提供的getRemoteHost()方法获得访问Web应用客户的IP地址和名称,但是这样会消耗Web容器的资源,并且还需要通过IP地址和DNS服务器反查用户的名字。因此当系统上线时,可以将这个属性关闭,从而减少资源消耗,那么Web应用也就只能记录下IP地址。修改的属性是enableLoopups="false"。

(2)调整线程数

Tomcat通过线程池来为用户访问提供响应,对于上线的系统初步估计用户并发数量后,再调整线程池容量。例如,用户并发数量在100左右时,可以设置minProcessors="100",maxProcessors="100"。将最大和最小设置为一样后,线程池不会再释放空闲的线程,当用户访问突然增加时,不需要再消耗系统资源去创建新的线程。

(3)调整最大连接数

这个其实最复杂,即使用户并发量大,但是系统反应速度快,也没必要把这个值设置太高,高了系统需要消耗大量的资源去切换线程,但是如果设置太低也会造成应用无法满足用户并发需要。因此设置这个最好能够结合整个系统的跟踪与调优,使系统达到最好的平稳状态,一般设置为maxProcessors的1.5倍即可。

(4)调整网络超时

主要是HTTP协议也有个连接过程,客户端连接到服务器上后,如果长时间没有得到处理就会被释放。如果服务器处理速度较慢,但是希望每个用户都能得到有效处理,或者网络环境不好,需要保证用户不会因为超时中断,也可以把时间加长。但是一般设置成connectionTimeout="30000"即可。太长对系统来说价值不大,反而会浪费系统资源在无谓的长连接上。

(5)具体修改如下。

minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10。

maxProcessors:最大连接线程数,即并发处理的最大请求数,默认值为75。

acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100。

enableLookups:是否反查域名,取值为true或false。为了提高处理能力,应设置为false。

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


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI