欢迎来到天天文库
浏览记录
ID:33715208
大小:1.18 MB
页数:27页
时间:2019-02-28
《王磊_面向互联网的性能测试案例分享》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、面向互联网的性能测试案例分享王磊@百度wanglei@baidu.comoutlinecase1case3case2case4案例一测试结果不实际情况丌符案例一案例重现–测试对象:检索模块–表现•线下测试,当请求量为400条/秒时,机器的cpuidle为40%•线上服务,当请求量为250条/秒时,机器的cpuidle为20%–后果•本次升级项目失败,回滚项目案例一疑问?–线下测试中为何没有测试出来?如何找到原因–测试方法–测试数据•词表•数据量–测试环境案例一问题复现–方法•对比排查–顺序•由极可能发生到最丌可能发生,逐一排查本案例的结论–上有模块一个配置项错误案例一case1ca
2、se3case2case4意想不到的配置案例二OS对性能测试的影响案例二案例重现–测试对象:提供垂直类检索的子系统–表现•线下做性能测试,发现3台机器的IO负载特别高•换到其他机器上,没有问题案例二初步排查–Raid一样–异常机器:r/s大约1000多次,带宽rkB/s大约140MB,svctm约0.5ms,因此IO利用率接近100%(%util)–正常机器:r/s大约150多次,带宽rkB/s大约5MB,svctm约4ms,因此IO利用率接近60%(%util)进一步分析–该模块的功能–读取的方式案例二128K4M案例二case1case3case2case4意想不到的系统知识配置案
3、例三网络环境对性能的影响案例三案例重现–测试对象:2个模块组成的检索子系统–表现•上有模块(A),请求下游模块数据总是连接超时(B)–做过什么?•数据量变大后,增加B模块数量•一个A模块连接B模块的数量变多案例三超时问题排查顺序–模块的超时时间配置–网络带宽是否合适–网络模型是否合适–程序是否有bug–OS的限制–网络硬件?案例三具体分析–交换机的情况•A连接100个B,A的接收带宽1000Mbps,100个B的发送带宽为100*1000Mbps–原理•原因何在•以前为何没事案例三case1case3case2case4意想不到的系统知识网络环境配置案例四丌良代码对性能的影响案例四案
4、例重现–测试对象:一个检索模块–表现•性能表现不预期的相差较大•进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70•发现majflt每秒增量为0,而minflt每秒增量大亍10000案例四Majfltminflt1检查要访问的虚拟地址是否合法2查找/分配一个物理页3填充物理页内容(读取磁盘)4建立映射关系(虚拟地址到物理地址)5重新执行发生缺页中断的那条指令案例四案例四案例四案例四代码–一个请求来,用malloc分配2M内存,请求结束后free这块内存。–日志显示分配内存语句耗时10us,平均一条请求处理耗时1000us性能差的原因–内存申请造成缺页中断–因为这种缺页
5、丌需要磁盘,所以是minfit–缺页中断在内核态执行,进程的内核态cpu消耗很大案例四case1case3case2case4意想不到的系统知识网络环境过硬的编程配置关注我们:t.baidu-tech.com资料下载和详细介绍:infoq.com/cn/zones/baidu-salon“畅想•交流•争鸣•聚会”是百度技术沙龙的宗旨。百度技术沙龙是由百度与InfoQ中文站定期组织的线下技术交流活动。目的是让中高端技术人员有一个相对自由的思想交流和交友沟通的的平台。主要分讲师分享和OpenSpace两个关键环节,每期只关注一个焦点话题。讲师分享和现场Q&A让大家了解百度和其他知名网站技术支持的
6、先进实践经验,OpenSpace环节是百度技术沙龙主题的升华和展开,提供一个自由交流的平台。针对当期主题,参与者人人都可以发起话题,展开讨论。InfoQ策划·组织·实施关注我们:weibo.com/infoqchina
此文档下载收益归作者所有