首页 > 其他分享 >cpu高的问题排查

cpu高的问题排查

时间:2023-12-28 14:57:22浏览次数:25  
标签:查看 uat 问题 排查 线程 mq cpu

问题背景

中小件装卸服务uat时,cpu报99,想到是新接了的mq,于是将接mq改为只打印日志,cpu恢复正常

由于业务正在进行uat验证,所以没有办法排查,只能等到夜深人静没人用的时候将逻辑都打开,让机器报警排查问题

 

一开始是觉得mq的数据太多接不过来,于是给uat的机器进行扩容,发现每个机器的cpu都很高,先将机器缩容,通过ump查看每分钟的mq的数据并不多,

 


 

 


 

 

然后下载jstack查看发现好多线程接收新增的两个mq的数据,于是查看了mq2的文档,发现consumer有个maxConcurrent属性,maxConcurrent 是单分区组上面的最大并发数,如果不配置这个是可以动态调整的,配置之后就不会自动调整了,于是将maxConcurrent设置为1,部署uat,发现依然没有解决问题

 

于是在行云上面执行了top命令,查看了当前cpu哪个进程最高

 


 

这里可以看到进程282占用cpu最高

 

再通过进程id找到占用最高的线程id top -H -p pid,得到如下信息

 


 

可以看到前面的线程占用cpu较高,找出其中一个将线程数转化成16进制

 

再通过jstack得到当前程序的快照,找到这个线程,查看堆栈信息,找到了问题所在

 


 

 

 


 

 

将57行的数据放到static块中问题解决

 

 


 

 

 

最终效果:

 


 

 

标签:查看,uat,问题,排查,线程,mq,cpu
From: https://www.cnblogs.com/lilyjia/p/17932714.html

相关文章

  • 反编译wx小程序遇到的问题
    怎么反编译就不说了,有很多文章,推荐两个http://t.csdnimg.cn/DrvBZhttp://t.csdnimg.cn/NOEys 下面开始说问题_typeof3isnotafunctionasd将项目下文件@babel/runtime/helpers/typeof.js内容替换为如下function_typeof2(o){"@babel/helper......
  • 服务压测偶现卡住问题分析
    服务框架介绍服务是一个生产者,一个消费者,通过对象池分配对象,通过加锁队列进行数据交互。现象通过观察服务日志,发现服务经常报timeout错误初步定位内核打印执行步骤,发现服务是阻塞在最后一帧,由于内核没有发出最后一帧,因此服务一直在尝试获取最后一帧详细日志分析通过分析,发......
  • NP完全问题
    NP完全问题NP完全问题是不确定性图灵机在P时间内能解决的问题,是世界七大数学难题之一。NP完全问题排在百万美元大奖的首位,足见他的显赫地位和无穷魅力。数学上著名的NP问题,完整的叫法是NP完全问题,也即“NPCOMPLETE”问题,简单的写法,是NP=P?的问题。问题就在这个问......
  • 【史上最易懂】变分推断:从【求分布】的推断问题,变成【缩小距离】的优化问题,用简单的分
    变分推断:从求分布的推断问题,变成缩小距离的优化问题频率学派与贝叶斯学派隐空间和隐变量变分推断完整推导 频率学派与贝叶斯学派学过概率论,应该了解过,概率分为2个学派:频率学派:数据是客观的(看到啥就是啥,隐变量z->观察变量/输入变量x),直接求统计指标即可(似然函数),代表之作像CNN、......
  • 公司使用数据加密软件时要注意哪些问题?
    当公司使用数据加密软件时,具体的关注点和优势包括:数据保护:加密确保敏感数据在传输和存储过程中不容易被未经授权的访问者获取,增强了数据的保密性。防范数据泄露:通过有效的密钥管理和访问控制,公司可以最小化数据泄露的风险,确保只有授权人员能够访问特定的加密数据。遵......
  • MySQL 5.6 到 MYSQL 5.7 应用迁移有什么问题,升级后打脸又降回去
    最近说来惭愧,有开始说mysql5.6的问题了,是在是无奈有一个项目古老且XX,大批的在用MySQL5.6这个版本的数据库,之前并未进行管理,但基于Enterprise的数据库都管理的还可以,所以这个项目也就到了手里,然后我们提出从5,6升级数据库版本的问题,并提出升级后的各种利好,但在升级过程中,我们遇......
  • 遇到跨端开发或多项目开发时,遇到的一些问题探讨,后端开发语言如何选择?
    ​ 最近有同学问我,做后端开发项目时用php,java,c#,go,pathon...哪个好,从最近阿里云、美团服务器崩溃来看,我想给你最直接的回答是,没有完美的,只有适合自己的。咱们讨论最多的问题就是跨多端开发,以及多项目开发后期所带来的升级、维护等相关问题,接下来就该问题,我发表一点自己的看法,也算是......
  • 排查oracle日志增速过快记录
    问题产生:最近同事连接开发环境oracle数据报错,一开始简单更加了下归档空间,每次加5G,语句如下:查看归档空间大小:showparameterdb_recovery;查看使用占比:select*fromv$flash_recovery_area_usage;增加归档空间:altersystemsetdb_recovery_file_dest_size=30G; 后来每......
  • vs code 运行python 项目问题
    1. 安装python、vscode;2. anaconda配置运行项目的虚拟环境;3. vscode打开运行项目文件夹;4 vscode安装python插件;   打开VScode编辑器,按下快捷键“Ctrl+Shift+P”,或者左下角图标 ,选择“CommandPalette”         调出全局设置搜索窗......
  • 深入探究多线程中的虚假唤醒现象--从生产者消费者问题到高级解决方案的全方位解读
    文章目录生产者和消费者问题虚假呼唤问题解决方案线程之间的虚假唤醒问题常出现在多线程编程中。我看国内很多教程都解释的稀里糊涂的,所以打算写一篇博客好好絮叨絮叨。首先看一下线程虚假唤醒的定义:多线程环境下,有多个线程执行了wait()方法,需要其他线程执行notify()或者notifyAl......