Tomcat内存溢出及线程紊乱问题研究
摘要在很多基于B/S结构的网站架构中WEB容器内存溢出及线程紊乱问题比较隐蔽很多时候在测试阶段并不能发现只有在现实中大规模数据和高并发量的情况下问题才逐渐的暴露出来。因此在网站正式发布前代码进行走查和技术改进并修改相关服务器软件的配置可以在很大程度上减少此类事件的发生。本文以Tomcat为例对WEB容器在数据传输过程中内存溢出及线程紊乱的表现、原因及解决方案作了简要论述。
关键词 TomcatWEB容器 内存溢出线程紊乱
随着Interne t技术的普及各地方学校、研究所和商业单位都在积极进行基础教育资源网和资源库的建设。然而随着资源网使用人数的不断增加其并发量也在急剧增长对WEB服务器的承压性和稳定性提出了新的挑战。然而大多数WEB容器均有内存限制因此在服务器没有内存还有很大空缺的情况下WEB容器内存首先溢出经常报“OutO fMemo ry”错误并与其他因素一道引发了线程紊乱导致应用系统的某些功能重复执行并且引起了数据库服务器崩溃、系统越来越慢直到死机等问题。
随着互联网技术的发展基于WEB容器大规模数据传输以及并发量的需求已经日渐突出而数据传输效率、WEB应用服务器性能以及应用系统的稳定性等因素直接影响了数据传输的质量。在以Tomcat为WEB容器的环境中若以上问题处理不当则很多时候表现为Tomcat内存溢出以及线程紊乱造成服务器宕机严重影响正常的网站运行。
1Tomcat内存溢出及线程紊乱的主要表现
Tomcat内存溢出主要是通过系统速度、系统性能表现以及系统日志来反映的。通过对日志文件和系统表现的分析与判断即可断定是否为内存溢出线程紊乱是指在Web容器中发生的线程异常的情况其很多时候是在内存溢出之后出现的通过对应用系统的操作日志及WEB容器的相关日志即可判断。
1.1Tomcat内存溢出主要表现
1系统的速度越来越慢甚至出现死机的现象。
2在Tomcat日志中 出现“O utO fMemoryError”提示。
3设置Xrunp mij vmp ipro file r检测过度使用的对象两次垃圾回收操作间隔最佳平均时间应至少为每次垃圾回收所用掉的平均持续时间的5-6倍。如果低于这个时长则可判断系统内存资源已出现紧张。
4查看GC 日志中每次垃圾回收显著增加后立即使用的内存量。如果显示锯齿模式并且锯齿模式具有不规则的形状更像楼梯则存在内存溢出。
IonSwitch是一家2016年成立的国外VPS主机商,部落上一次分享的信息还停留在2019年,主机商提供基于KVM架构的VPS产品,数据中心之前在美国西雅图,目前是美国爱达荷州科德阿伦(美国西北部,西接华盛顿州和俄勒冈州),为新建的自营数据中心。商家针对新数据中心运行及4号独立日提供了一个5折优惠码,优惠后最低1GB内存套餐每月仅1.75美元起。下面列出部分套餐配置信息。CPU:1core内存...
Hostinger 商家我们可能一些新用户不是太熟悉,因为我们很多新人用户都可能较多的直接从云服务器、独立服务器起步的。而Hostinger商家已经有将近十年的历史的商家,曾经主做低价虚拟主机,也是比较有知名度的,那时候也有接触过,不过一直没有过多的使用。这不这么多年过去,Hostinger商家一直比较稳妥的在运营,最近看到这个商家在改版UI后且产品上也在活动策划比较多。目前Hostinger在进...
提速啦 成立于2012年,作为互联网老兵我们一直为用户提供 稳定 高速 高质量的产品。成立至今一直深受用户的喜爱 荣获 “2021年赣州安全大赛第三名” “2020创新企业入围奖” 等殊荣。目前我司在美国拥有4.6万G总内存云服务器资源,香港拥有2.2万G总内存云服务器资源,阿里云香港机房拥有8000G总内存云服务器资源,国内多地区拥有1.6万G总内存云服务器资源,绝非1 2台宿主机的小商家可比。...