JVM性能调优
1.生产环境下cup飙高产生的原因
cpu运行—线程
1.有哪些原因会导致CPU飙高的问题
CAS 修改值内容 缺点:CAS修改值失败的话一直不断的重试 运行状态 以循环的方式
乐观锁 mysql重试过程一直在运行状态非常消耗cpu的资源。限制重试的次数
2.云服务器上安装Redis 黑客攻击Redis6379端口号注入挖矿程序
3.并发量tomcat单独线程处理业务请求
4.服务器端被ddos攻击
5.死循环
Cpu飙高产生的原因
- CAS自旋没有控制自旋次数;
- 死循环----cpu飙高的问题;
- 阿里云Redis被注入挖矿程序; 不要被外网访问到
- 服务器被DDOS工具导致cpu飙高; 限流、ip黑名单
Cpu飙高问题如何排查
进程-——-创建n多个线程—定位根据那个业务相关
Linux环境下使用Arthas(阿尔萨斯)定位CPU飙高问题
linux下安装
curl -O https://arthas.aliyun.com/arthas-boot.jar
java -jar xxx.jar:启动程序
top -c:查看CPU
Thread -n 3:查看CPU占比最高的进程是什么
服务器监控系统
比如:阿里云云cpu飙高阈值7080 90 95 100%----发送邮件报警
运维----先知道是那台服务器节点cpu飙高192.168.110.110 cpu飙高70%
通知开发人员配合排查该服务器进程中那个线程导致cpu飙高。
|