由于策划推出一个优惠活动,网站访问量增加,按照以往情况,服务是没有问题的,但查看CUP占用率过高,开始分析问题,
1,首先,判断是否是非法IP访问,如果是的话,禁用
2,看看F5请求分发是否正常
3,服务节点是否正常
4,日志打印是否正常
如果都正常的话,需要具体查看引起CUP使用率过高的进程是哪些,
具体步骤:
1,通过top命令,查看当前是哪个进程CUP使用过高
2,通过ps -mp pid -o THREAD,tid,time命令查看该进程下的线程,找到具体耗时最高的线程有哪些
3,printf "%x\n" tid,将线程转换为16进制格式
4,打印线程堆栈信息jstack pid |grep tid
5,找到该线程具体对应的业务场景代码
6,分析具体原因,是否是程序问题引起的