1.生产环境中发生cpu飙高的问题,你是如何定位解决的呢?
线程运行在cpu上面(cpu使用率瞬间飙高):
产生原因:
1. 死循环

2. juc并发编程 cas锁(乐观锁)

3. 阿里云服务器上安装Redis
可能会被别人注入挖矿程序
4. 服务器被ddos (流量,默认请求攻击),导致cpu飙高
解决:
1.死循环
突出死循环
2. 加上sleep,且控制一下循环的次数
不再飙高:

3. 最好端口号不要通过外部访问,别人可以扫描到,可能会钻redis漏洞;
4. 给接口做限流,限流、ip 黑名单、图形验证码防止机器模拟攻击;
我们的线程是运行在 cpu 上面
1.CAS 自旋一直重试导致 cpu 飙高 没有控制自旋次数; 乐观锁
2.死循环;<

文章讲述了生产环境中CPU使用率飙高的常见原因,包括死循环、JUC并发编程中的CAS锁、Redis安全问题和DDoS攻击,并提供了相应的解决方案,如限制循环次数、设置线程名称、使用限流和图形验证码。同时提到了使用Arthas和jvisualvm工具进行问题排查,并讨论了内存泄漏的问题。
最低0.47元/天 解锁文章
1932

被折叠的 条评论
为什么被折叠?



