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 日志中每次垃圾回收显著增加后立即使用的内存量。如果显示锯齿模式并且锯齿模式具有不规则的形状更像楼梯则存在内存溢出。
已经有一段时间没有听到Gigsgigscloud服务商的信息,这不今天看到商家有新增一款国际版线路的美国VPS主机,年付也是比较便宜的只需要26美元。线路上是接入Cogentco、NTT、AN2YIX以及其他亚洲Peering。这款方案的VPS主机默认的配置是1Gbps带宽,比较神奇的需要等待手工人工开通激活,不是立即开通的。我们看看这款服务器在哪里选择看到套餐。内存CPUSSD流量价格购买地址1...
licloud怎么样?licloud目前提供香港cmi服务器及香港CN2+BGP服务器/E3-1230v2/16GB内存/240GB SSD硬盘/不限流量/30Mbps带宽,$39.99/月。licloud 成立於2021年,是香港LiCloud Limited(CR No.3013909)旗下的品牌,主要提供香港kvm vps,分为精简网络和高级网络A、高级网络B,现在精简网络和高级网络A。现在...
racknerd怎么样?racknerd最近发布了一些便宜美国服务器促销,包括大硬盘服务器,提供120G SSD+192TB HDD,有AMD和Intel两个选择,默认32G内存,1Gbps带宽,每个月100TB流量,5个IP地址,月付$599。价格非常便宜,需要存储服务器的朋友可以关注一下。RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新泽西机房基于KVM虚拟化的VPS、...