记一次jstack线程诊断

问题

dubbo请求服务,服务提供者 打印日志 显示请求任务队列堆积过长,线程池活动线程过大。,增加线程池线程核心数以及队列大小 依然没用。直接跑到核心线程数的最大值

排查

1.使用top 命令查看Cpu 发现 cpu 188% 内存。超过一倍

2.定位线程问题 top -Hp pid 查看线程使用情况 发现线程数超标 并且每个线程所占cpu相同 ,内存也相同 ,怀疑某段代码一直在循环,

3.使用 jstack pid 命令发现 所有任务线程 都一直在执行统一行代码,找到源码,发现确实是一个循环,因为数据库条件不满足一直做循环处理,

处理

修改代码逻辑,防止无限循环出现

记一次jstack线程诊断相关推荐

  1. 14.线程诊断_cpu占用高(top、ps H -eo pid,tid,%CPU | grep tid、clear、jstack pid)-------注意jstack输出的线程信息是16进制的

    线程和虚拟机栈是息息相关的. 这里提供了一些线程诊断的一些案例, 有些时候我们需要学习掌握一些工具,有利于诊断我们的线程情况 来看第一个案例,有一个应用程序,cpu占用居高不下,影响了其他程序,怎么去 ...

  2. jstack 线程状态详解

    jstack 线程状态详解 jatsck 用法 线程状态 一图以庇之 系统线程状态 (Native Thread Status) jatsck 用法 #jstack -h Usage:jstack [ ...

  3. jstack 线程状态

    转自 http://www.cnblogs.com/nexiyi/p/java_thread_jstack.html jstack  线程状态 jstack  线程里,值得关注的线程状态有: 死锁,D ...

  4. jstack 线程状态分析_面试官:说说你是怎么用JDK监控和故障处理工具的吧?例如jstack...

    当JVM发生故障的时候,能应用JDK命令行工具对JVM进行监控和故障诊断是Java开发人员必备的技能之一.本篇文章将为大家带来JVM进行监控和故障诊断常用的命令行工具,如下图: 其中jps.jstat ...

  5. Java线程状态Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释

    一.线程5种状态 新建状态(New) 新创建了一个线程对象. 就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行,等待获 ...

  6. 查看java线程堵塞排查_记一次应用线程被阻塞的问题排查

    昨晚测试环境遇到了一个问题,情况是这样的: 1.系统访问了两个特定的帆软报表之后,其他所有请求被阻塞,导致 nginx 报 504 的错误. 2.帆软报表仍然能访问. 分析.猜测与定位: 1.既然帆软 ...

  7. Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释

    一.线程5种状态 1.新建状态(New) 新创建了一个线程对象. 2.就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行 ...

  8. jstack线程状态分析

    使用jstack pid命令可以查看JVM的线程状态,其中值得关注的线程状态有: 死锁,Deadlock(重点关注) 执行中,Runnable 等待资源,Waiting on condition(重点 ...

  9. springboot tomcat默认线程数_记一次JAVA线程池的错误用法

    最近项目一个项目要结项了,但客户要求 TPS 能达到上千,而用我写的代码再怎么弄成只能达到 30 + 的 TPS,然后我又将代码中能缓存的都缓存了,能拆分的也都拆分了,拆分时用的线程池来实现的:其实现 ...

最新文章

  1. 复制构造函数(拷贝构造函数)
  2. Vuex 的异步数据更新(小记)
  3. sqlite3 C接口基础
  4. Eclipse中spring boot的安装和创建简单的Web应用
  5. php basic publish,RabbitMQ入门(PHP语言描述)
  6. ESP32 + ESP-IDF |GPIO 01 - 驱动外部两个LED灯,以每300ms的时间间隔闪烁
  7. Leetcode每日一题:381.insert-delete-getrandom-o1-duplicates-allowed(时间插入、删除和获取随机元素-允许重复)
  8. android studio dns问题_Android网络优化篇-从DNS开始
  9. [转载] python可视化分析(matplotlib、seaborn、ggplot2)
  10. Hadoop 各组件介绍
  11. 数据库 | Redis 缓存雪崩解决方案
  12. linux 删除网桥接口,linux 网桥代码分析 三 网桥及网桥端口的添加与删除
  13. 带宽与速度的换算(表达式+例子)
  14. Django学习 day79之drf第三日
  15. spry菜单栏(一)
  16. Excel公式-TEXT函数使用
  17. 推荐三个 VSCode 摸鱼插件
  18. c语言定义max和命令,C语言#define定义函数
  19. 基于Tushare数据库统计混合型基金前十大重仓股持仓变化
  20. Luogu P1365 WJMZBMR打osu! / Easy

热门文章

  1. 论职能线和产品线的部门划分
  2. 只需7步,魔方6面即刻还原!
  3. Centos7 切换为163 网易yum
  4. win10无法连接到这个网络_网络打印机连接正常但无法打印
  5. 火影忍者新忍出击服务器正在维修,火影忍者手游更新公告 新忍出击资源翻倍...
  6. 一堆Offer怎么选?这样做就不纠结了
  7. 由闷骚书生与假正经小姐的古典爱情故事说起
  8. 微信小程序的购物车功能
  9. 大数据常用非关系型数据库汇总(NoSQL)
  10. 分布式的Key-Value存储系统voldemort