MySQL Case--应用服务器性能瓶颈导致慢SQL
在分析优化慢SQL时,除考虑慢SQL对应执行计划外,还需要考虑
1、 慢SQL发生时间点的数据库服务器性能
2、慢SQL发生时间点的应用程序服务器性能
3、 慢SQL发生时间点数据库服务器和应用服务器之间网络
如果应用服务器上存在性能压力,会导致对应用服务器:
1、无法快速处理MySQL服务器返回的数据
2、无法及时处理已开启的事务如提交或回滚事务
如果数据库服务器和应用服务器之间网络存在问题:
1、数据丢包重传,MySQL数据库返回数据量较大时花费较长时间在网络传输上
2、未提交事务,网络抖动导致连接断开,由于缺少TCP“四次挥手”操作,MySQL服务器未察觉到连接断开而一直等待应用服务器提交或回滚事务。
下面是应用服务器出现性能瓶颈时的场景描述:
某数据库一段时间内出现大量超过30秒的INSERT/UPDATE/DELETE慢SQL,经排查发现无阻塞,数据库无性能瓶颈,且在该时间范围内性能压力有明显下降。
数据库服务器CPU使用率下降:

数据库服务器CPU负载下降:

数据库服务器磁盘写入速度下降明显:

数据库服务器磁盘读取速度轻微下降:

由于所有慢SQL均来自同一台应用服务器,排查该应用服务器发现:
应用服务器CPU使用率暴涨:

应用服务器CPU负载超过100:

应用服务器内存使用率接近100%:

应用服务器磁盘使用率接近100%,中间有明显波动:

应用服务器SWAP使用率在故障恢复后下降:

MySQL Case--应用服务器性能瓶颈导致慢SQL的更多相关文章
- MySQL选错索引导致的线上慢查询事故
前言 又和大家见面了!又两周过去了,我的云笔记里又多了几篇写了一半的文章草稿.有的是因为质量没有达到预期还准备再加点内容,有的则完全是一个灵感而已,内容完全木有.羡慕很多大佬们,一周能产出五六篇文章, ...
- MySQL基本语法(一):和SQL Server语法的差异小归纳
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- MySQL与OLAP:分析型SQL查询最佳实践探索
搞点多维分析,糙快猛的解决方式就是使用ROLAP(关系型OLAP)了.数据经维度建模后存储在MySQL,ROLAP引擎(比方开源的Mondrian)负责将OLAP请求转化为SQL语句提交给数据库.OL ...
- MySQL的redo log结构和SQL Server的log结构对比
MySQL的redo log结构和SQL Server的log结构对比 innodb 存储引擎 mysql技术内幕 log buffer根据一定规则将内存中的log block刷写到磁盘,这个规则是 ...
- DB-SQL-MySQL-杂项-调优:Mysql千万以上数据优化、SQL优化方法
ylbtech-DB-SQL-MySQL-杂项-调优:Mysql千万以上数据优化.SQL优化方法 1.返回顶部 1. 1,单库表别太多,一般保持在200以下为宜 2,尽量避免SQL中出现运算,例如se ...
- 神奇的 SQL 之 MySQL 性能分析神器 → EXPLAIN,SQL 起飞的基石!
前言 开心一刻 某人养了一头猪,烦了想放生,可是猪认识回家的路,放生几次它都自己回来了.一日,这个人想了个狠办法,开车带着猪转了好多路进山区放生,放生后又各种打转,然后掏出电话给家里人打了个电话,问道 ...
- MySQL:怒刷牛客网“sql实战”
MySQL:怒刷牛客网"sql实战" 在对MySQL有一定了解后,抽空刷了一下 牛客网上的 数据库SQL 实战,在此做一点小小的记录 SQL1 查找最晚入职员工的所有信息 sele ...
- 学会使用MySQL的Explain执行计划,SQL性能调优从此不再困难
上篇文章讲了MySQL架构体系,了解到MySQL Server端的优化器可以生成Explain执行计划,而执行计划可以帮助我们分析SQL语句性能瓶颈,优化SQL查询逻辑,今天就一块学习Explain执 ...
- mysql怎么导入大文件的sql文件
这个方法在windows上或者linux上都可以使用 多数人习惯使用phpmyadmin或者一些客户端比如workbench,navicat 但是最有效的是原生的php工具 命令都差不多 请在cmd的 ...
随机推荐
- 使用C++调用并部署pytorch模型
1.背景(Background) 上图显示了目前深度学习模型在生产环境中的方法,本文仅探讨如何部署pytorch模型! 至于为什么要用C++调用pytorch模型,其目的在于:使用C++及多线程可以加 ...
- [LeetCode] 167. Two Sum II - Input array is sorted 两数和 II - 输入是有序的数组
Given an array of integers that is already sorted in ascending order, find two numbers such that the ...
- 一键安装docker-ce
curl https://get.docker.com |env CHANNEL=stable sudo sh -s docker --mirror Aliyun
- Kubernetes 服务质量 Qos 解析 - Pod 资源 requests 和 limits 如何配置?
QoS是 Quality of Service 的缩写,即服务质量.为了实现资源被有效调度和分配的同时提高资源利用率,kubernetes针对不同服务质量的预期,通过 QoS(Quality of S ...
- PHP阿里大于发短信教程
PHP阿里大于发短信教程 1 先去控制台 https://www.alidayu.com/center/user/account?spm=a3142.7791109.1999204004.5.ZtBQ ...
- python文件夹操作
1.遍历文件夹下所有文件2.将后缀为.DCM的文件复制到指定文件夹 import os import shutil def all_path(dirname): result = []#所有的文件 f ...
- LeetCode 856. 括号的分数(Score of Parentheses)
856. 括号的分数 856. Score of Parentheses 题目描述 给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: () 得 1 分. AB 得 A + B 分,其中 A ...
- 14.Python略有小成(自由模块)
Python(模块) 一.模块定义与分类 我们说一个函数就是一个功能,那么把一些常用的函数放在一个py文件中,这个文件就称之为模块,模块,就是一些列常用功能的集合体,模块就是文件,存放一堆常用的函 ...
- localhost-startStop-1启动失败
背景:在IDEA调试程序的时候,应用起不来,看日志是从main线程切换到localhost-startStop-1线程就开始卡住了 方法一 原因 这个问题和jvm上的熵池策略有关 解决 将$JAVA_ ...
- python基础_mysql建表、编辑、删除、查询、更新
1.建一张学生表 包含(id,name,age,sex)2.增加四条数据3.查询表中sex为男的数据4.删除id =3的数据,5.将sex为女的,修改为男 create: CREATE TABLE d ...