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 日志中每次垃圾回收显著增加后立即使用的内存量。如果显示锯齿模式并且锯齿模式具有不规则的形状更像楼梯则存在内存溢出。
digital-vm在日本东京机房当前提供1Gbps带宽、2Gbps带宽、10Gbps带宽接入的独立服务器,每个月自带10T免费流量,一个独立IPv4。支持额外购买流量:20T-$30/月、50T-$150/月、100T-$270美元/月;也支持额外购买IPv4,/29-$5/月、/28-$13/月。独立从下单开始一般24小时内可以上架。官方网站:https://digital-vm.com/de...
今天获得消息,vdsina上了AMD EPYC系列的VDS,性价比比较高,站长弄了一个,盲猜CPU是AMD EPYC 7B12(经过咨询,详细CPU型号是“EPYC 7742”)。vdsina,俄罗斯公司,2014年开始运作至今,在售卖多类型VPS和独立服务器,可供选择的有俄罗斯莫斯科datapro和荷兰Serverius数据中心。付款比较麻烦:信用卡、webmoney、比特币,不支持PayPal...
ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...