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

TongWeb8下应用忙碌线程监控

问题 :

        在系统运行过程中发现TongWeb进程占用CPU过高,需要分析是应用哪里引起的问题。

分析过程(仅限Linux环境):

1.  通过top命令查看TongWeb的java进程占用的CPU情况。 查看误区:不要以为java进程CPU占到398%就是高,若服务器为8核,则CPU占用满显示为800%。

[root@localhost bin]# top
top - 10:45:58 up  1:19,  1 user,  load average: 3.65, 1.56, 0.68
Tasks: 171 total,   2 running, 169 sleeping,   0 stopped,   0 zombie
%Cpu(s): 38.7 us,  1.0 sy,  0.0 ni,  60.0 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
KiB Mem :  1863220 total,    73452 free,  1352208 used,   437560 buff/cache
KiB Swap:  2097148 total,  2095604 free,     1544 used.   214164 avail MemPID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND13382 root      20   0 4235564 834012  17716 S 398.0 44.8   2:52.53 java14871 root      39  19  108036   1032    744 R  1.3  0.1   0:00.92 updatedb7153 root      20   0  483536  34056   7660 S  0.3  1.8   0:12.50 containerd14491 root      20   0  162036   2356   1604 R  0.3  0.1   0:00.11 top1 root      20   0  133892   3892   2344 S  0.0  0.2   0:01.70 systemd2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd3 root      20   0       0      0      0 S  0.0  0.0   0:00.15 ksoftirqd/05 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0

2. 进入TongWeb8控制台查看忙碌线程,查看占用CPU高的线程栈所执行的操作。

3. 若服务器CPU很忙,已经无法打开TongWeb控制台,则可以用./admin.sh busy-thread  [pid]  [线程数]  命令查看。

[root@localhost bin]# ./admin.sh busy-thread  13382  200
Execute the command: busy-thread
[1] Busy(48.3%) thread(14214/0x3786) stack of java process(13382):
"TW-0.0.0.0-8088-16" #200 daemon prio=5 os_prio=0 tid=0x00007ff508459800 nid=0x3786 runnable [0x00007ff5148e6000]java.lang.Thread.State: RUNNABLEat com.tong.TestServlet.doGet(TestServlet.java:52)at javax.servlet.http.HttpServlet.service(HttpServlet.java:503)at javax.servlet.http.HttpServlet.service(HttpServlet.java:590)at com.tongweb.server.core.ApplicationFilterChain.enterApp(ApplicationFilterChain.java:366)at com.tongweb.server.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:236)at com.tongweb.server.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)at com.tongweb.web.websocket.server.WsFilter.doFilter(WsFilter.java:32)at com.tongweb.server.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197)at com.tongweb.server.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)at com.tongweb.server.core.StandardWrapperValve.invoke(StandardWrapperValve.java:146)at com.tongweb.server.core.StandardContextValve.invoke(StandardContextValve.java:78)at com.tongweb.ee.server.OpenEJBValve.invoke(OpenEJBValve.java:29)

http://www.lryc.cn/news/176199.html

相关文章:

  • Docker部署ActiveMQ消息中间件
  • Python并发执行(未完待续)
  • 4.一元多项式相乘
  • Android Gilde获取网络图片显示保存路径并转化为bitmap
  • Uts阿里百川旗舰版插件UniApp-X
  • 一创聚宽的实盘就要关闭了,有没有好用的实盘平台推荐
  • 全套办公软件Office 2019 mac专业版功能
  • 【计算机网络】IP协议
  • 【操作系统笔记九】并发安全问题
  • 主要文库网站网赚分析
  • “ElementUI实现动态树和动态表格的综合应用“
  • 按键检测|中断检测
  • MySQL的执行流程
  • 如何办一份有价值的企业内刊/报纸?向《华为人》学习就够了
  • C++:从初识到初识的旅程
  • JavaWeb 学习
  • 百度SEO优化不稳定的原因分析(提升网站排名的稳定性)
  • 给你两个集合,要求{A} + {B}
  • Java获取实时摄像头进行拍照(附源码)
  • Kafka入门
  • 异地恋的甜蜜解药:李哥的群晖Videostation电影分享教程
  • JSON数据获取指南!
  • ASCII码-对照表
  • 点餐小程序的制作流程详解
  • Python应用程序:从Android日志到Excel文件的智能过滤和输出
  • C++常见面试题汇总
  • redis缓存穿透问题
  • 学生宿舍管理系统(前端java+后端Vue)实现-含前端与后端程序
  • codesys【网桥】
  • JS生成随机字符串的多种方法