问题描述:
测试环境大量请求出现504错误
1、第一反应上服务器看看资源消耗情况(登陆服务器时出现卡顿)
2、使用top命令查看cpu消耗情况,查看结果如下:

很明显cpu使用率已经满了(两核CPU)
3、使用ps -mp 23481 -o THREAD,tid,time | sort -rn命令获取线程信息,并找到占用CPU高的线程,信息如下:

4、使用命令printf “%x\n” 41846将将需要的线程ID转换为16进制格式


5、使用sudo jstack 23481 |grep “5c0d” -A 30命令打印线程的堆栈信息

通过代码很容易的分析出是因为最近项目加入了disruptor高效的消息队列

YieldingWaitStrategy是它的三种策略之一

com.lmax.disruptor.BlockingWaitStrategy
最低效的策略,但其对CPU的消耗最小,并且在各种部署环境中能提供更加一致的性能表现;

com.lmax.disruptor.SleepingWaitStrategy
性能表现和com.lmax.disruptor.BlockingWaitStrategy差不多,对CPU的消耗也类似,但其对生产者线程的影响最小,适合用于异步日志类似的场景;

com.lmax.disruptor.YieldingWaitStrategy
性能最好,适合用于低延迟的系统;在要求极高性能且事件处理线程数小于CPU逻辑核心树的场景中,推荐使用此策略;

linux服务器cpu飙高问题排查实践记录相关推荐

  1. linux服务器CPU飙高排查

    文章目录 前言 一.第一步 top 二.根据pid查找具体线程 2.根据pid找到16进制 3. 根据进程和线程查找原因 总结 前言 系统cpu飙高,尤其对于后端人员来说,其实应该学会排查,这样也算是 ...

  2. 记一次服务器CPU飙高使用率超过100%原因分析(Arthas)

    文章目录 背景 一.告警分析 二.原因分析 1.找到java进程 2.进入 Arthas 3. 使用 Arthas 找到CPU占用最高的线程 4.定位原因 5.解决方案 总结 背景 某天下午频繁收到预 ...

  3. window服务器cpu过高的排查_线上服务器发生CPU占用率过高应该如何排查并定位问题?...

    国外开发者平台 HankerRank 发布的 2018 年开发者技能调查报告中有一项关于"雇主最看重哪些核心能力"的调查,结果显示如下: 排名前几的比较受重视的能力分别为:解决问题 ...

  4. 面试官:线上服务CPU飙高怎么排查?

    用jstack排查 先执行top,找到CPU占用比较高的进程 jstack 进程id > show.txt 找到进程中CPU占用比较高的线程,线程id转为16进制 到show.txt文件中根据线 ...

  5. CPU 飙高问题排查和解决方法

    摘要 本文档记录了排查 CPU 飙高问题的处理过程和解决方法,从多个方面进行分析和排查. 问题简述 在一个生产环境中发现 CPU 飙高问题,但是无法确定问题的具体原因. 排查方法 使用 jstack ...

  6. oralce load的时候使用触发器会导致load慢吗_一次FGC导致CPU飙高的排查过程

    今天测试团队反馈说,服务A的响应很慢,我在想,测试环境也会慢?于是我自己用postman请求了一下接口,真的很慢,竟然要2s左右,正常就50ms左右的. 于是去测试服务器看了一下,发现服务器负载很高, ...

  7. 一次FGC导致CPU飙高的排查过程

    今天测试团队反馈说,服务A的响应很慢,我在想,测试环境也会慢?于是我自己用postman请求了一下接口,真的很慢,竟然要2s左右,正常就50ms左右的. 于是去测试服务器看了一下,发现服务器负载很高, ...

  8. window服务器cpu过高的排查_服务器CPU使用率过高排查与解决思路

    发现服务器的cpu使用率特别高 排查思路: -使用top或者mpstat查看cpu的使用情况 mpstat -P ALL 2 1 Linux 2.6.32-358.el6.x86_64 (linux- ...

  9. window服务器cpu过高的排查_高频面试题:Java程序占用 CPU 过高怎么排查

    这个问题可以说是 Java 面试的高频面试题了,有很多面试官都喜欢问这个问题,问题可能是下面这样的. 线上一台服务器 CPU 使用率100% 了,如果你碰到这样的情况,如何排查并找到问题原因? 这就是 ...

最新文章

  1. 如何辨别二逼、文艺互联网公司?
  2. 1047. 删除字符串中的所有相邻重复项
  3. weblogic获取文件的路径问题
  4. Java中数组的初始化
  5. SAP License:SAP常用操作
  6. Informix常用操作方法命令
  7. [转载]Asp.Net在线用户列表的開發匯總
  8. MinGW —— Minimalist GNU for Windows、Cygwin —— Windows 下的类 unix 系统
  9. java获取屏幕上某坐标点的颜色
  10. java快排原理_快速排序 java实现 (原理-优化) 三路快排
  11. 梨花带雨音乐播放器3.91源码开源(网站添加背景音乐)
  12. r9270公版bios_显卡成功刷入UEFI GOP BIOS 彻底解决开机扁苹果
  13. 【JAVA】从0开始写DHT/磁力爬虫 05 INFOHASH转种子
  14. 隔离DCDC电源模块和非隔离DCDC电源模块不同之处
  15. 关于java模拟邮箱发送邮件的设计与实现
  16. 9大代理服务器软件的比较与分析之校园局域网代理蝴蝶
  17. 一行代码教你撩妹手到擒来❤html+css+js烟花告白3D相册(含音乐+可自定义文字)520表白/七夕情人节/求婚
  18. TFmini 常见问题与解答
  19. 可以下载查看国家自然科学基金的申请文本
  20. SpringMvc整合邮件发送

热门文章

  1. 房贷计算器(包含商业贷款和公积金贷款) 两种思路
  2. 无线网络技术复习整理——第二章
  3. android 网速刻度盘 自定义view二
  4. 常用商务英语词汇集锦(转载)
  5. protobuf c语言版本
  6. 为什么装完计算机系统后进不去,电脑重新装完系统后开机后就这个样子,一直进不去是为什么?...
  7. undo和redo介绍
  8. 服务器装虚拟机要做阵列吗,vm虚拟机做磁盘阵列
  9. 2022 - 软件构造复习
  10. 组合数C(n,m)的四种计算方法