10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

百度技术沙龙第 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:322161
用户头像

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

关注

评论

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

应对新冠病毒传播-粤政协委员建议构建公共卫生区块链平台

CECBC

区块链 公共卫生

测试一下

TJJ

重学JS | Set和Map是如何过滤重复值的?

梁龙先森

面试 大前端 编程语言 28天写作

第四周作业

oooh-la

别让假“努力”毁掉了你!面试了10家企业软件测试岗位,面试题整理

程序员阿沐

程序员 面试 软件测试 自动化测试 测试工程师

常见运维监控系统的技术选型

OpsMind

运维 监控系统

数据库表数据量大读写缓慢如何优化(3)【Elasticsearch的使用】

我爱娃哈哈😍

大数据 elasticsearch 架构 优化 死磕Elasticsearch

想学AI开发很简单:只要你会复制粘贴

华为云开发者联盟

GitHub 开源 AI mindspore 推理

红河州加速区块链等新技术与实体经济的深度融合

CECBC

数字经济

拍乐云技术分享 | 美术教学中视频矫正是怎么做的?

拍乐云Pano

音视频 RTC 图像处理 拍乐云 视频处理

用APICloud开发iOS App Clip(苹果小程序)详细教程

YonBuilder低代码开发平台

小程序云开发 大前端 移动开发 APP开发

图解 | 原来这就是TCP

程序员 网络协议 架构师

高承实:区块链是一个技术结构组织 而不是技术

CECBC

大数据

软件架构模式之分层架构

架构精进之路

架构设计 七日更 28天写作

Java 程序经验小结: 慎用可变参数

后台技术汇

28天写作

谷歌面试题:如何从无序链表中移除重复项?

田维常

面试

第一章作业

tera

PostgreSQL中Oid和Relfilenode的映射

PostgreSQLChina

数据库 postgresql 开源 软件

目标岗位差异化对比

Geek_6a8931

第一周作业-产品备忘录

Eva

喜讯 | 拍乐云Pano荣获「2020大数据产业创新技术突破」奖

拍乐云Pano

大数据 音视频 RTC 拍乐云

老熟人,新朋友!写作平台邀新季!

InfoQ写作社区官方

热门活动

区块链挖矿到底是什么,该怎么挖?

v16629866266

Hbase内核剖析

永健_何

大数据 HBase 底层技术 分布式数据储存

LocalDateTime、OffsetDateTime、ZonedDateTime互转,这一篇绝对喂饱你

YourBatman

LocalDateTime OffsetDateTime ZonedDateTime

Java程序员福音!阿里最新产物分布式小册:存储+计算+通信+资源调度

Java架构追梦

Java 阿里巴巴 架构 面试 分布式

【面试必备】Swift 面试题及其答案

ios swift

产品思维和产品意识

ALone

都在用Kafka ! 消息队列序列化怎么处理?

李尚智

Java kafka 架构 消息队列 消息中间件

见证产品成长,共享AI力量!

百度大脑

架构师训练营第九周作业

zamkai

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