高并发下常见问题以及解决方案

                                                     高并发下常见问题
1、高并发下mysql出现锁等待情况(Waiting for table metadata lock)
使用命令查询:SHOW PROCESSLIST;
常用原因:长事物运行,阻塞DDL,继而阻塞所有同表的后续操作(比如一个事务执行了11s还没执行完成)。
解决方法:1、避免长事务,将长事务分解成多个小事务,可以使用消息队列拆分   
                  2、设置锁超时短些 lock_wait_timeout (默认时间一年,可以设置成30分钟)

2、一台入口nginx阿里云服务器在高并发下带宽占满(200M),导致系统瘫痪
centos8系统下使用如下命令检查网卡流量
(1)、 yum install iftop 和 iftop -i eth0 -P 命令看是否可以查看到网卡带宽的具体占用情况
(2)、sudo yum install nethogs 和 nethogs  命令查看每个进程带宽具体占用情况
(3)、使用阿里云ECS实例详情中可以观察内网和外网流量情况
查询方法:(1)、查询最近一段时间nginx日志中,统计排行最前访问接口调用次数和大小,而且更要查询日志中存在的大的js、css,字体库文件,以及大于1M以上静态文件进行搜索,然后

猜你喜欢

转载自blog.csdn.net/qq_39291929/article/details/107815235