- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用Oprofile定位my sql性能瓶颈
使用oprofile定位MySQL性能瓶颈
悟云(谢良)@淘宝性能评测组
目录
Oprofile简介
Case1
Case2
Oprofile的局限性
Oprofile简介
摘自官网:
OProfile is a system-wide profiler for Linux systems, capable of profiling all running code at low overhead
Oprofile简介
oprofile 是 Linux 平台上的一个功能强大的性能分析工具, 支持两种采样(sampling)方式:基于事件的采样(event based)和基于时间的采样(time based)。
她是一个系统层面的工具^-^
Oprofile简介
优点:
目前大部分2.6内核的发行版内置(这点是systemtap没法比的)
引入的overhead非常小
可以对linux kernel进行分析
非常适合做Benchmark用
简单易用(这点也是systemtap没法比的)
Oprofile系统工作流图
常用的命令
opcontrol --init 加载oprofile内核模块
opcontrol --setup --no-vmlinux 不采样内核
opcontrol --start
opcontrol --dumpopcontrol --shutdown
opcontrol --reset
opreport --long-filenames 系统级别
opreport image:filename -l 模块级别
opannotate image:filename -s 源码级别
Case1
背景:在测试淘宝内部开发的统计Mysql语句逻辑读、
物理读、执行次数的插件性能时。。。
mysql show variables like innodb_sql%;
+++
| Variable_name | Value |
+++
| innodb_sql_stat_cells_num | 10000 |
| innodb_sql_stat_is_all_on | ON |
| innodb_sql_stat_is_count_on | ON |
| innodb_sql_stat_is_logic_read_on | ON |
| innodb_sql_stat_is_low_read_on | ON |
+++
Case1
如果在高并发压测的同时去频繁查询结果,比如:
for i in {1..36000} ; do ./mysql -S ../run/mysql.sock -uroot -e select * from information_schema.innodb_sql_stat\G sleep 0.1;done
Case1
procs memory swap-- io --system-- cpu
r b swpd free buff cache si so bi bo in cs us sy id wa
9 0 0528028 2385012 0 0 0 31248 16407 283530 32 48 17 3
8 1 0528028 2385012 0 0 0 28546 15752 281153 32 48 17 2
9 1 0528028 2385532 0 0 0 29432 16542 276584 34 48 15 3
9 1 0528040 2385520 0 0 0 27546 15021 291593 33 48 16 2
9 0 0528040 2385780 0 0 0 28492 16094 279498 33 48 16 3
7 1 0528040 2386300 0 0 0 26902 16305 277508 33 48 17 3
Case1
我们用oprofile看下innodb内部到底怎么了:
samples % image name
文档评论(0)