mysql ssd tps 上不去_转【案例分享】压测TPS上不去
1.问题描述:
客户新上的一个关键业务系统,在做上线前的压力测试时,应用的并发无法达到上线前的并发指标和响应时间指标要求。压测时TPS的曲线很不稳定,如下所示:
2.分析过程:
从上述知识点可以知道:
ORACLE中LGWR进程只有一个,由于所有进程在commit前都需要通知lgwr进程帮忙把之前在log buffer中生成的修改过程记录(改变向量)写到磁盘中。
当大量进程要同时请lgwr进程帮忙写时,就出现排队的情况。
在高并发的联机交易OLTP系统中,单进程的lgwr进程有可能成为一个大瓶颈,特别是在无法在线日志IO写性能出现问题的情况下。
因此,我们需要检查lgwr进程的状态。
通过gv$session观察RAC两个节点lgwr进程写日志的情况,结果如下图所示:
可以看到:
Ø RAC(数据库集群)两个节点中,只有1个节点出现log file parallel write的等待,该等待表示lgwr进程正在对磁盘的在线日志文件进行写操作。
Ø 在state是waiting的情况下,节点1 log file parallel等待的seq#都是35693,但是seconds_in_wait达到了21秒。简单来说,就是lgwr进程写一个IO需要21秒!
这意味着,压测时所有并发进程必须要发生等待,等lgwr进程完成这个的IO,才可以继续通知LGWR进程帮忙刷log buffer的改变向量,因此从压测的TPS曲线来看,就是不稳定,出现了大幅衰减。
至此,我们可以肯定,IO子系统有问题
需要重点排查IO路径下的光纤线、SAN交换机、存储的报错和性能情况。、
考虑到客户那边管存储的团队/部门可能不承认数据库的IO慢的证据,同时为了让对方增加排查力度,远邦让客户发出以下命令,查看多路径软件的IO情况,结果如下图所示:
节点1上出现明显的IO ERROR,并且在持续增加!
继续检查节点2,发现节点2上没有任何IO ERROR!
这个与gv$session仅有一个进程在等log file parallel write写完是完全吻合的。
3.原因
在铁的证据面前,客户的存储团队没有再挣扎,而是开始认认真真逐个在排查,最终在更换了光纤线后问题得到圆满解决。以下是更换光纤线后再次压测的等待事件!
4.问题得到解决
压测的TPS曲线从原来的波浪形
变成了如下的良好曲线
mysql ssd tps 上不去_转【案例分享】压测TPS上不去相关推荐
- mysql实例和数据的安全_数据库安全--案例篇
目的 由于<数据库安全浅析>一文中,主要介绍了数据库安全方面的一些基本安全策略,缺少了必要的案例分析和处理过程.为了进一步丰富数据库安全的内容,特撰文案例篇,主要介绍数据库安全上遇到的案例 ...
- jmeter constant timer 如何添加_阿里巴巴在开源压测工具 JMeter 上的实践和优化
Apache JMeter 是 Apache 旗下的开源压测工具,创建于 1999 年初,迄今已有超过 20 年历史.JMeter 功能丰富,社区(用户群体)庞大,是主流开源压测工具之一. 性能测试通 ...
- 如何在label上显示字_如何地图上标注店面_新开的店铺要怎样上地图显示_怎么将公司标记在地图...
新开的店铺商铺商家商户企业工厂怎么标注地图位置?如何地图上标注店面_怎么将店铺标记在地图_新开的店铺要怎样上地图显示?还没有办好营业执照可以做?您可能会有很多地图疑问?请直接联系腾图通地图服务公司为您 ...
- html上传文件_.NET基于WebUploader大文件分片上传、断网续传、秒传
(给DotNet加星标,提升.Net技能) 转自:学习中的苦与乐 cnblogs.com/xiongze520/p/10412693.html 现在的项目开发基本上都用到了上传文件功能,或图片,或文档 ...
- mysql笔记(锁、事务、性能优化、压测结果)
Mysql 该笔记,主要根据kkb课程并结合网上资料和自己的理解而形成. 一.Mysql架构 1.1 逻辑架构 这是从网上copy过来的图.网上一些教程会把mysql也进行分层. 连接层:Connec ...
- svga文件预览_工作案例分享:SVGA动效落地的使用与避坑
编辑导读:网络上关于 SVGA 的讨论大多数都只是在软件上的问题,具体实践案例很少.本文作者依据工作中项目实践的所思所想,结合案例等分享了 SVGA 动效落地使用过程中非常有价值的设计知识,并对过程存 ...
- pb 导出文件 日期格式_「案例分享」ERP系统导出数据注意事项
古哥辅导的企业大多都上了ERP,但有些共同点就是ERP没有用好,或者没有发挥ERP的最强大功能,这里分享其中一类问题,就是从系统中导出的数据格式太多,占用空间太大,运行速度太慢等等的问题:如何解决呢? ...
- java常用压测工具_几款常用压测工具推荐
ab ab是apache自带的压力测试工具,使用起来非常方便. 安装 如果安装了apache, 那么ab已经安装好了,如果不想安装apache的话,可以通过以下方式安装ab # ubuntu sudo ...
- java 压测工具_几款常用压测工具推荐
ab ab是apache自带的压力测试工具,使用起来非常方便. 安装 如果安装了apache, 那么ab已经安装好了,如果不想安装apache的话,可以通过以下方式安装ab # ubuntu sudo ...
最新文章
- docker 安装 RabbitMQ
- 无法启动MySQL数据库
- javascript数据结构与算法---检索算法(二分查找法、计算重复次数)
- python distutils模块(貌似是用来打包发布自定义python包的)
- UE4入门学习3:GamePlay框架
- JavaScript笔记-对wheelDeltaY和deltaY的体会
- SNMP简单网络管理协议
- 关于js中replace()只能替换字符串中第一个对象的问题
- Python bytearray()
- Spring Boot 2.1.3 整合 H2Datase 嵌入式数据库
- 【Java】JSP完全自学手册
- 国产超级英雄逆袭好莱坞
- Pandas 基础知识
- 深度学习模型中的参数数量(备忘)
- 【总结】56个JavaScript 实用工具函数助你提升开发效率!
- 假如编程是魔法之零基础看得懂的Python入门教程
- Java设计模式之行为型模式
- mathematica怎么用
- 蓝桥杯算法训练-逗志芃的危机
- matlab中的方波信号图片_如何在MATLAB R2019b中导出simulink的各种图片
热门文章
- 从Spring开始,Java EE 6必须具备哪些附加功能?
- Sublime Text安装格式化xml的插件
- 浅析 Linux 初始化系统(系统服务管理和控制程序/Init System) -- sysvinit/systemvinit(System V init)
- Linux 命令之 du -- 显示每个文件和目录的磁盘使用空间/所占用的磁盘空间大小/所使用的磁盘空间大小/查看文件和目录的大小
- prometheus命令_Prometheus 入门
- java enum 报错_enum报错问题,求大神帮看下
- C语言printf()函数具体解释和安全隐患
- Java反序列化json内存溢出_fastJson与一起堆内存溢出'血案'
- java count 在哪一类里_java 5线程中 Semaphore信号灯,CyclicBarrier类,CountDownLatch计数器以及Exchanger类使用...
- tinymce vue 部分工具不显示_tinymce-vue使用问题及解决记录