写点什么

百度技术沙龙第 1​8 期回顾:大型网站的性能测试实践及结果分析​(含资料下载)

  • 2011-09-20
  • 本文字数:1709 字

    阅读完需:约 6 分钟

在 9 月 17 日百度主办、InfoQ 策划组织实施的第18 期百度技术沙龙活动上,来自百度质量部高级架构师王磊以及HP 测试工程师, 7 点测试论坛坛主 Zee,分别分享了与大型网站性能测试的相关话题,话题涉及互联网产品性能测试案例及经验分享和企业级系统性能分析实践。本文将对他们各自的分享做下简单的回顾,同时提供相关资料的下载。

主题一:互联网性能测试案例及经验分享视频,MP3 和 Slides 等资料下载

来自百度的高级架构师王磊第一个为大家分享,王磊讲解了四个具体的实例,其中包括测试结果与实际情况不符、OS 对性能测试的影响、网络环境对性能的影响以及不良代码对性能的影响。在每部分的案例讲解中,都将问题进行了重现,首先说明问题表现,其次说明该问题所导致的后果,由如何找到原因再到案例的结论分析等。其中,重点讲解了不良代码对性能的影响部分:​​​​​​

测试对象为一个检索模块,问题为性能表现与预期的相差很大,在分析具体原因时王磊首先讲解了内存分配的原理:

  • 检查要访问的虚拟地址是否合法
  • 查找 / 分配一个物理页
  • 填充物理页内容(读取磁盘)
  • 建立映射关系(虚拟地址到物理地址)
  • 重新执行发生断页中断的那条指令

从代码的角度上来看:

  • 一个请求过来,用 malloc 分配 2MB 内存,请求结束后 free 这块内存
  • 日志显示分配内存语句耗时 10us,平均一条请求处理耗时 1000us

从分析中最后得出结论,性能差的原因是:

  • 内存申请造成缺页中断
  • 因为这种缺页不需要磁盘,所以是 minfit
  • 缺页中断在内核态执行,进程的内核态 CPU 消耗很大

主题二:找出系统性能瓶颈:企业级系统性能分析实践视频,MP3 和Slides 等资料下载

Zee 的演讲主要包含以下几个部分,理解性能测试、性能测试需求的获取和分析、性能测试执行、控制及分析、可用性统计分析、排队论在分析过程中的应用,最后对各种场景的性能问题通过实例进行了分享。在 Zee 的演讲过程中,重点讲述了性能测试执行、控制及分析。Zee 首先带领读者一同梳理了性能问题分析的流程,接着介绍了如何从系统架构来分析瓶颈点,列举了常见的系统故障征兆:

  • 持续运行缓慢
  • 系统性能随时间的增加逐渐下降
  • 系统性能随负载的增加逐渐下降
  • 间发性的系统挂起或异常错误
  • 可预见的死锁
  • 系统突然出现混乱

稍后,Zee 详细列举了系统常见的问题及解决方法,常见问题涉及内存泄漏呈线性增长、内存泄漏呈指数级增长、导致无限循环的编码缺陷、资源泄漏、外部瓶颈、外部系统的过度使用、频繁调用 CPU 密集型组件的编码缺陷、桥接层本身存在的问题、内部资源的过度使用或分配不足、不断重试、线程阻塞点、线程的死锁或活锁、网络饱和等。针对以上“疾病”,分别列举了出现的征兆,分析其原因并提供了相应的解决办法。紧接着,Zee 还对分析性能问题时需要注意的信息进行了讲解,介绍了如何执行针对 SQL 的性能分析,通过图形的形式展现了性能指标和用户数两者之间的关系和影响并通过思维导图的方式将与性能调整有关的议题进行了呈现。

​最后,Zee 针对性能测试中需要注意的一些问题进行了总结:

  • 在正式测试之前进行实验性的测试
  • 不要对生产环境造成不良影响
  • 数据聚集问题
  • 没有及时通知其他相关人员
  • 全面分析测试数据
  • 注意硬件设备对性能的影响
  • 没有确定测试需要采集的数据
  • 没有确定测试的范围和目的
  • 测试时关注系统的出错信息
  • 测试的网络环境不清楚
  • 相关人员没有及时在现场
  • 没有测试一个完整的回路
  • 并发数与发送流量的问题

​​​​会后一些网友在新浪微博分享了他们参会的感受:

@醉梦如烟 _ 燕飞:#百度技术沙龙#王磊、高楼大家本次关于性能测试这块非常不错,让我受益匪浅,希望今后能更多的参与这样的讲座。

@savager :#百度技术沙龙#好地方,前沿技术,多学习。

@陈奎 _ 走行寻:今天的百度技术沙龙性能测试专场,人数出奇的爆满。

@haitao_yao :#百度技术沙龙# 第二场有料,惠普的性能测试跟我遇到的场景类似,没白来,哈哈。

​此外,Zee 在会后的随笔中,记录了参加本期沙龙演讲后的感触,请参阅《Zee 随笔—第十八期InfoQ:百度技术沙龙演讲之后》

有关百度技术沙龙的更多信息,可以通过新浪微博关注** @百度技术沙龙,或者加入百度技术沙龙微群 **,InfoQ 上也总结了过往 17 期所有百度技术沙龙的演讲视频和资料等,感兴趣的读者可以直接浏览阅读

2011-09-20 17:321973
用户头像

发布了 156 篇内容, 共 54.0 次阅读, 收获喜欢 7 次。

关注

评论

发布
暂无评论
发现更多内容

FlyFish 1.0发布,新增4个可视化组件

云智慧AIOps社区

大前端 低代码 数据可视化

第四范式OpenMLDB在金融风控数据库的计算优化实践

第四范式开发者社区

第四范式 开源技术 OpenMLDB datafun

基于SVDD算法的半监督风控模型

索信达控股

算法 风控模型 半督导算法

无锡农商行王宗:敏态转型,实现科技引领业务的华丽转身

BoCloud博云

微服务 云原生

阿里内部疯传的分布式架构手册,轻松吊打小日子过的不错的面试官

编程 程序员 架构 分布式

外包学生管理系统架构文档

Steven

架构实战营

腾讯云开源百万级服务发现和治理中心“北极星”,打造可持续微服务生态

科技热闻

Apache Pulsar 在能源互联网领域的落地实践

Apache Pulsar

架构 云原生 Apache Pulsar 消息系统 用户案例 能源互联网

绝绝子!美团大牛吐血整理总结“消息队列核心知识笔记”是真的吊

编程 程序员 MQ 队列

腾讯Q3财报:腾讯企点服务超100万家企业,显著降低客服成本

科技热闻

今日谈:数字信号常用编码、香农公式、信道复用技术

Regan Yue

计算机网络 网络工程师 11月日更

安全漏洞之经典上传漏洞

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

《大教堂与集市》

石云升

读书笔记 开源 11月日更

架构实战营-模块三作业

无名

架构实战营 「架构实战营」

视频通信关键技术探索及实践

网易云信

音视频 通信云

❤️这应该是Postman最详细的中文使用教程了❤️(新手使用,简单明了)

六十七点五

软件测试 性能测试 Postman 自动化测试 接口测试

Aeron是如何实现的?—— Conductor

BUG侦探

Aeron Conductor

今天面了个腾讯拿38K出来的大佬,让我见识到了基础的天花板

收到请回复

Java 程序员 后端

腾讯安全推出御界NDR「横移检测版」,全面检测域渗透攻击

腾讯安全

电脑数据恢复用哪款软件比较好

淋雨

EasyRecovery

ShowMeBug 中如何科学的识别用户浏览器?

ShowMeBug

大前端 浏览器 WebRTC

吐血整理:常用的大数据采集工具,你不可不知

小术晓术

大数据 数据采集

如何在 MySQL / MariaDB 中导入导出数据,导入导出数据库文件、Excel、CSV

蒋川

MySQL 数据库 MariaDB 卡拉云

第三阶段总结

张靖

#架构实战营

腾讯云数据库TDSQL首次登上财报!TDSQL在不同金融机构核心系统中的渗透率明显提升

科技热闻

速看!从源码到实战,腾讯大牛纯手码48W字SpringCloud实战笔记

Java 编程 程序员 面试 SpringCloud

千万不要小瞧复杂度分析,代码详解复杂度的重要性

小Q

Java Python 学习 数据结构 算法

HTTP与HTTPS,HTTPS更加安全。

喀拉峻

网络安全 安全 信息安全 HTTP

ShowMeBug 黑科技丨一招快速实现架构绘图之鼠标同步

ShowMeBug

思维导图 实时同步 绘图库

gitlab-runner构建解决java缓存问题

ilinux

Java 设计模式 Monads 的美丽世界

码语者

Java 设计模式 Monads

百度技术沙龙第1​8期回顾:大型网站的性能测试实践及结果分析​(含资料下载)_InfoQ_贾国清_InfoQ精选文章