当前位置: 首页 > news >正文

全国企业信用信息查询官网2018年网站优化怎么做

全国企业信用信息查询官网,2018年网站优化怎么做,什么网站建设,六安网约车平台文章目录 问题场景问题定位问题解决 本文参考: Linux服务器之CPU过高解决思路_linux cpu温度过高_Jeremy_Lee123的博客-CSDN博客 Java程序员必备:jstack命令解析 - 掘金 (juejin.cn) 重点问题!CPU利用率过高排查思路|原创 (qq.…

文章目录

  • 问题场景
  • 问题定位
  • 问题解决

本文参考:

Linux服务器之CPU过高解决思路_linux cpu温度过高_Jeremy_Lee123的博客-CSDN博客

Java程序员必备:jstack命令解析 - 掘金 (juejin.cn)

重点问题!CPU利用率过高排查思路|原创 (qq.com)

问题场景

通常会收到监控系统告警,相关服务器负载异常,cpu使用率过高

原因:可能是业务代码死循环、GC频繁、线程阻塞等

在虚拟机上运行下面的文件:

/*** @Author jiangxuzhao* @Description* @Date 2023/8/1*/
public class CPUHigh {public static void main(String[] args) {Thread t = new Thread(()->{int a = 3;while (true) {if (a == 3) {a = a/2;}else {a = 3;}}});t.start();}
}

javac CPUHigh.java

问题定位

1.执行top 命令查看占用cpu最多的Java进程为4018。

top

在这里插入图片描述

2.看到PID,根据pid进程号去查看它的所有线程,找到对应cpu占用最多的Java线程为4030。

top -Hp 4018

在这里插入图片描述

  1. 将10进制线程id 4030转换为16进制
[root@VM-8-3-centos ~] printf '%x\n' 4030
fbe
  1. 通过jstack命令找到进程4018对应的堆栈信息,搜索其中的线程id为16进制fbe的记录
[root@VM-8-3-centos ~]# jstack 4018 | grep fbe -C 10

结果如下:

2023-08-01 22:31:43
Full thread dump OpenJDK 64-Bit Server VM (25.362-b08 mixed mode):"Attach Listener" #10 daemon prio=9 os_prio=0 tid=0x00007fa70c001000 nid=0x7000 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLE"DestroyJavaVM" #9 prio=5 os_prio=0 tid=0x00007fa73404b800 nid=0xfb3 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLE"Thread-0" #8 prio=5 os_prio=0 tid=0x00007fa734203800 nid=0xfbe runnable [0x00007fa71fbd2000]java.lang.Thread.State: RUNNABLEat CPUHigh.lambda$main$0(CPUHigh.java:14)at CPUHigh$$Lambda$1/471910020.run(Unknown Source)at java.lang.Thread.run(Thread.java:750)"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x00007fa73412f800 nid=0xfbc runnable [0x0000000000000000]java.lang.Thread.State: RUNNABLE"C1 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007fa73411d000 nid=0xfbb waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLE

从中可以看出问题定位在Thread-0

问题解决

对于CPU占用率飙高的场景,刚才列举的测试代码只是一种情况,还有如下可能。

1.业务线程出现大量阻塞,比如synchronized锁,可以检索状态为BLOCKED的线程找到堆栈信息,然后分析。

2.网络IO或者磁盘IO阻塞导致的,排查方法和上面一样。

3.GC线程频繁导致,线程的标识为GC task thread,对于这种情况可能是年轻代设置不合理、大对象分配过多,old区存活对象过多,具体问题具体分析。

http://www.15wanjia.com/news/195802.html

相关文章:

  • 西安网站设计费用wordpress新建主题
  • 辽宁鞍山网站建设企业网站货物查询怎么做
  • 中国建行手机银行app下载安装seo排名快速
  • 营销型网站建设的指导原则不包括个人简历一键生成
  • 网站未备案wordpress链接太阳宫网站建设
  • 网站信息备案查询系统烟台百度网站建设
  • 铭坐网站建设搜索引擎搜不到网站
  • php做的网站 订单系统电商网站怎样做优化才最合理
  • 站长之家ping建设银行网站登录不了
  • 国外 创意 网站怎么做付费的小说网站
  • 上传空间站的注意事项国内网站建设公司
  • 深圳在线制作网站flash做的个人网站
  • 广州建站公司有哪些优化网站用软件好吗
  • 黄金网站app视频下载小说东莞地铁线路图
  • wordpress建站系统视频教程内江网站建设新闻
  • 福州免费企业建站支付宝微信wordpress
  • 瑞安网站建设温州网页设计
  • 企业网站模块种类学习网站建设总结
  • 化工网站建站模板做网站的软件有哪些
  • 如何做收款网站好看的网站页面设计
  • 建设企业网站报价企业邮箱登陆登录入口官网
  • 做网站设计制作的公司wordpress joonla安全
  • 自己开发网站需要什么技术阜宁做网站哪家公司最好
  • 以域名做网站关键词猪八戒网可以做福彩网站吗
  • 网站开发禁止下载功能中企动力邮箱登录口
  • 艺术品网站模板wordpress网站制作教程视频
  • 沙井品牌网站建设厦门 网站建设 网站开发
  • 网站建设在哪里找wordpress漂浮花瓣
  • 一个网站做三个关键词域名查询138ip
  • 夹江移动网站建设泉州市住房与城乡建设网站