node服务CPU过高如何解决

发布时间:2022-09-16 13:54:06 作者:栢白
来源:亿速云 阅读:254

今天小编给大家分享的是node服务CPU过高如何解决,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。

帮同事看一个CPU过高的问题

最终我们总结了排查思路,如下,欢迎补充

排查思路

0. 重启实例

部分问题,重启实例就能解决了。

先重启实例,这是必要做的一步,先让服务变得可用。如果后续CPU还是飙升过快,那么可能只能考虑先回滚代码了。飙升不快的话,可以不用回滚,尽快排查问题

1. linux shell 确定是否是node进程造成的

命令一: top

命令二: vmstat

[root@*** ~]# vmstat 2
procs -----------memory---------------- ---swap-- -----io---- --system-- -----cpu-----
 r  b      swpd  free   buff   cache      si   so    bi    bo   in cs   us sy id wa st
 0  0      0 233481328 758304 20795516    0    0     0     1    0    0  0  0 100  0  0
 0  0      0 233480800 758304 20795520    0    0     0     0  951 1519  0  0 100  0  0
 0  0      0 233481056 758304 20795520    0    0     0     0  867 1460  0  0 100  0  0
 0  0      0 233481408 758304 20795520    0    0     0    20  910 1520  0  0 100  0  0
 0  0      0 233481680 758304 20795520    0    0     0     0  911 1491  0  0 100  0  0
 0  0      0 233481920 758304 20795520    0    0     0     0  889 1530  0  0 100  0  0

参考链接: https://www.cnblogs.com/zsql/p/11643750.html

2. 看代码diff

重启实例还没解决,并且确定了是node进程的问题的话,

查看上线commit,检查一下代码diff,看看是否能找到问题点

3. 打运行时的CPU profiler

这个操作方法和我的另一篇如何快速定位ssr服务端内存泄漏问题 类似

node服务CPU过高如何解决

如果本地无法模拟出线上的环境?

比如下游RPC和本地就是有隔离,那就只能加代码,去打出profile了 nodejs.org/docs/latest…

node服务CPU过高如何解决

得到profile文件后,用chrome devtool打开

node服务CPU过高如何解决

4. 分析 CPU profiler

node服务CPU过高如何解决

5. 压测校验

可以用ab,或其他压测工具

总结

关于node服务CPU过高如何解决就分享到这里了,希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。

推荐阅读:
  1. tomcat占用cpu过高解决办法
  2. cpu温度过高的解决方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:php如何将数组转为json数据

下一篇:怎么在html页面中调用外部样式

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》