你好,我是一枚Java开发人员,欢迎关注我的头条号交流行业里关于代码方面的那点事,谢谢!
首先,你的这个问题描述的有些问题,你的问题应该是Web应用部署在Linux下的Tomcat容器中,在高并发的时候服务器压力大。线程开的多少跟你的Web程序有关,跟Tomcat无关,如果你怀疑线程的问题,你得检查你的程序,下面我告诉你一个方法,可以排查(jstack之jvm性能调优,也是我在工作中实际遇到的一个问题)。
如何用jstack找出最耗CPU的线程并定位代码jstack是JVM自带的一个堆栈跟踪工具。根据堆栈信息我们可以定位到具体代码,所以它在JVM性能调优中使用得非常多,下面是具体操作过程。
1、用top命令查看Linux服务器CPU、内存及IO的使用情况
如果服务器压力大,通过是由于某个进程占用CPU资源过高导致的(针对这个问题,你看下java进程),可以在top视图里很清晰的看到,高的时候会超过百分百。
2、找出java进程的PID
命令:ps -ef|grep java
输入的java进程的PID=21711
3、找出进程内最耗CPU的线程
根据第2步中的PID找出进程内最耗CPU的线程,可以用以下三条命令:
ps -Lfp pid
ps -mp pid -o THREAD, tid, time
top -Hp pid
TIME记录了各线程耗费CPU的时间,其中PID为21742的线程耗时最多。
4、用jstack命令输出进程的堆栈信息,并定位相应代码
由于jstack输出的堆栈信息里,线程PID全是16进制,所以,我们需求将第三步最耗时的线程21742转为16进定,可以这么做:
printf "%x\n" 21742
得到21742的十六进制值为54ee,下面会用到,实在不会写,就用计算器(运行里输入:calc即可弹出)
jstack 输出堆栈信息的命令:
jstack 21711 | grep 54ee
我的天,原来问题出在ActiveMQ上,是Web应用跟ActiveMQ通讯时出现了问题,通过检查MQ后才发现,MQ挂死了,在IE里访问MQ的管理控制台都打不开,MQ重启后一切正常。
很多程序员都是喜欢开发新的需求,不喜欢修改BUG,尤其是一些疑难杂症。所以很多人对JVM性能调优相关的东西知道的很少。其实,JVM性能调优是Java中非常重要的知识点,我们要必须了解,尤其是一些JVM调优工具。
如果大家有什么疑问,或者有更好的知识经验,不妨分享出来,共同学习,共同进步,谢谢大家!
今天给各位分享网站节日设计的知识,其中也会对节日网站模板进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!文章目录列表: 1、用母亲节和父亲节设计一个网页主题 2、关于六一儿童...
今天给各位分享办公电脑主流配置的知识,其中也会对办公电脑主流配置推荐进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!文章目录列表: 1、办公用电脑怎样选配置好 2、办公用组装...
今天给各位分享网站为何要备案的知识,其中也会对网站备案为什么要这么久进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!文章目录列表: 1、网站为什么要备案 2、网站为什么要进行...
每个服务器收费都不一样,有质量好的也有一般的,服务器托管一般按照机位来收费。下面是成都网络节点几种常见机位收费情况:1U/400元/月;2U/500元/月;4U/900元/月。注:带宽、IP价格不包含...
楼主你好,这很简单,你的服务器IP肯定对外暴漏了吧 如果你涉及的行业是于竞争激烈的行业,那么被人查到服务器IP做攻击 并非难事。 如果说经常被攻击,建议可以通过技术实现隐藏服务器真实IP 又或者去...
首先要确定一点是你的需求是什么,要用来干嘛,这里我简单列举一下最近云霸天下IDC服务商比较值得上手的几款给你做做参考:【推荐配置】点击购买服务器一,1核2G1M带宽=99.5元/年298.5元/3年(...
如果是Win7系统的话打开“我的电脑”窗口,在左边的资源管理器处,点“网络”,再点“网络和共享中心”,再点“本地连接”这四个字,就出来了。上面的第三种方法,这种方法也是最快最方便的。首先我们要连接网络...
游戏动漫 1、A轮融资 tap4fun 成都尼毕鲁科技股份有限公司 2、其它 梦工厂 成都梦工厂网络信息有限公司 锦天科技 成都锦天科技发展有限责任公司 电子商务 1、A轮融资 活动家 成都云数海量...