中国水利水电出版社店铺主页二维码
中国水利水电出版社 微信认证
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版)

100.30
运费: ¥ 7.00-25.00
库存: 200 件
深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版) 商品图0
深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版) 商品图1
深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版) 商品缩略图0 深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版) 商品缩略图1

商品详情

书名:深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版)

(测试、监控、调优一站解决,紧跟软件企业一线需求,知识点与案例无缝衔接。骨灰级测试专家、首批ISTQB资格认证获得者黄文高老师编写)

书号:9787522609690

定价:118.00

作者:黄文高  编著

出版日期: 2022年9月第1版

开本:16

字数:751000

页数:512

关键字设置:软件测试-性能测试-入门到精通-性能测试教程-性能测试教材 

本书特色:

●资深一线测试专家、软件测试培训课程高级讲师、首批ISTQB资格认证获得者黄文高老师倾心编写

●饱含作者超10年的软件测试及授课经验

●理论与实操并重,知识点与案例无缝衔接

●详细讲解性能测试全流程技术

●主流操作系统/Web应用、数据库、存储等服务器/前端,性能监控、调优一站掌握

●作者赠送LoadRunner电子书、相关课程视频

内  容  提  要

本书主要深入系统地讲解性能测试及性能调优相关技术。全书紧紧围绕企业现阶段性能测试的核心内容进行编排,囊括了性能测试的三大核心内容,即性能测试过程、脚本开发、服务器监控与调优。其中,性能测试过程的内容主要包括性能测试流程、性能工作负载建模和生产环境下的性能测试;脚本开发的内容包括特殊协议的脚本开发、接口性能的脚本开发以及全链路性能测试的脚本开发;服务器监控与调优的内容主要包括操作系统资源的监控与调优、Apache服务器监控与调优、Tomcat服务器监控与调优、Nginx服务器监控与调优、MS SQL服务器监控与调优、MySQL服务器监控与调优、Redis服务器监控与调优和前端性能优化的23大规则。

本书适用于测试工程师或已经在做性能测试的朋友,为了让一些想进入性能测试领域工作但缺少性能测试相关基础知识的朋友也能使用本书,作者免费提供了《性能测试基础—LoadRunner完全讲义》电子书,可通过扫描本书前言后面的二维码获取,通过二维码还可获取本书所有的相关代码等学习资源。希望本书能带领大家畅游性能测试的精彩世界。

 

 

前言

 

本书是《深入性能测试—LoadRunner性能测试、流程、监控、调优全程实战剖析》的升级版,笔者用了整整两年的时间完成了本书的创作,相比本书第一版,现在的内容可以说已经是脱胎换骨。新增了很多当前企业开发中流行的、急需的性能测试及调优的技术内容,当前,这些相关内容系统性学习资料极少。

笔者从事软件测试16年,从事性能测试13年,见证了国内软件测试从起步到成熟的整个过程。10年前国内很多公司没有软件测试团队,而今天一般的研发公司都有成型的软件测试团队。从10年前的手工测试,到今天不断完成接口测试、自动化测试、性能测试。

性能测试在近10年时间取得了长足的发展,特别是在移动互联不断发展的情况下,站点访问的用户越来越多,对系统的性能要求越来越高。10年前性能测试的招聘岗位很少,那时候对性能测试的要求很低,只要掌握性能测试工具的使用即可找到一份不错的工作。后来,企业要求性能测试工程师能够监控服务器的一些指标,不包括对全栈指标进行监控,但现在性能测试的高度和要求已经大幅度提高,从简单的脚本开发到全链脚本开发,从简单的场景监控到混合场景百分比模型监控,从单点服务器监控到全链路场景,从只要监控数据到分析和调优等。

这也是笔者为何对此书的升级付出大量精力的原因,花了整整两年时间升级这本书,就是希望能够将性能测试过程中需要监控和分析的所有对象都覆盖到,这样可以更好地帮助读者解决性能测试过程中遇到的问题,也可以更好地帮助读者完善性能测试技术体系。

本次升级主要是更新性能调优部分的内容,这些升级的内容可以覆盖企业性能测试常见的测试要求,包括:

(1)脚本开发。本书在脚本开发部分做了重点升级,主要是升级了接口性能测试脚本开发和全链路脚本开发,以前企业要求的性能测试只需要会简单的脚本开发,但现在性能测试为了更好地模拟业务场景,都要求开发全链路脚本,将每个场景做成一个全链路,这样就可以更完美地模拟真实的业务场景。

(2)全链路中每个节点的监控。本书在调优方面主要升级的内容包括前端优化,随着前端界面的元素越来越复杂,前端优化在性能测试过程中越来越重要。数据库方面性能优化的升级主要包括关系型数据库MySQL的监控与优化、非关系型数据库Redis的监控与优化、Nginx的性能监控与优化,完善了JVM的监控与优化。

(3)性能测试流程。深入剖析了性能测试的整个过程,详细介绍性能测试每个节点的工作内容、性能测试过程中的工作负载建模(建模是性能设计中最重要的环境,保证性能测试模拟的真实性),详细介绍生产环境下如何进行性能测试。

本书完全可以脱离性能测试工具来介绍性能测试,因为现在性能测试的核心是性能优化,性能测试工具只是模拟产生压力的一种方式,并不能提供更全面的监控信息,现在需要监控全链路过程中的每个服务器节点,只有这样才能更好地帮助读者解决性能问题,这也是本书最大的特点。

由于本次升级的内容比较多,书稿创作完成后达900多页,其中既包含了性能测试基础知识,又深入系统地讲解了性能测试与调优的内容。但显然,如果把这些内容放在一起,对于有一定测试基础的读者来讲会产生不必要的成本支出。因此,本书把性能测试的基础知识部分,即最新版的《性能测试基础—LoadRunner完全讲义》,制作成了电子版的形式,免费向零基础读者提供。有需要的读者可扫描下面的二维码获取相关电子书的内容,以及本书中的源码等学习资源。

在本书完成之际,感谢那些曾经帮助、支持和鼓励过我的朋友。

由于编者水平有限,很多内容是自己的经验总结,谬误之处在所难免,欢迎广大读者批评指正。读者在阅读本书过程中如有任何不清楚的问题和批评、建议,可以发邮件到arivnhuang@163.com或直接加编者微信13590101972,编者将尽力给您答疑解惑。

最后,感谢您购买此书,希望您在书中可以找到那些正在困扰着您的问题的答案。

 

目  录

目      录

前言

第一版前言

 

第1章  性能测试过程    1

1.1  性能测试过程概述    1

1.2  性能测试设计    2

1.2.1  需求调研    2

1.2.2  业务模型    3

1.2.3  场景模型    5

1.2.4  数据设计    6

1.2.5  环境设计    8

1.3  性能测试构建    9

1.3.1  用例设计    9

1.3.2  脚本开发    11

1.3.3  场景设计    12

1.3.4  搭建测试环境    13

1.3.5  准备数据    13

1.4  性能测试过程执行    13

1.5  性能测试分析、诊断、调节    13

1.6  小结    14

第2章  工作负载建模    15

2.1  什么是工作负载建模    15

2.2  工作负载建模主要活动    16

2.2.1  定义性能测试目标    16

2.2.2  理解应用程序    16

2.2.3  关键场景识别    17

2.2.4  确定关键场景使用路径    17

2.2.5  确定唯一测试参数    18

2.2.6  确定场景中的相对负载分布    19

2.2.7  确定目标负载水平    19

2.2.8  其他项设置    20

2.3  小结    20

第3章  生产系统性能测试    21

3.1  什么是生产环境    21

3.2  生产环境性能测试风险    22

3.3  为什么需要在生产环境下进行性能测试    23

3.4  生产环境性能测试误解    24

3.5  生产环境下性能测试最佳实践    25

3.6  小结    26

第4章  特殊协议    27

4.1  Windows Sockets(WinSock)协议    27

4.1.1  Windows Sockets录制选项设置    27

4.1.2  Windows Sockets录制    29

4.1.3  Windows Sockets数据操作    33

4.1.4  关于LRS函数    35

4.2  邮件服务协议    41

4.2.1  邮件服务协议简介    41

4.2.2  邮件服务协议录制    43

4.2.3  脚本分析    48

4.2.4  关于SMTP和POP3函数    50

4.3  小结    52

第5章  基于接口性能测试    53

5.1  WSDL协议简介    53

5.2  Web Service接口测试    56

5.2.1  选择Web Services协议    56

5.2.2  选择Manage Services管理待测试的

服务    57

5.2.3  Import Services导入服务    58

5.2.4  添加服务调用(Add Service Call)    60

5.2.5  调试脚本    63

5.2.6  增强脚本    64

5.3  web_service_call函数    65

5.4  Java环境    68

5.5  JavaVuser常用函数    69

5.6  JavaVuser脚本    70

5.6.1  手工插入Java的方法    71

5.6.2  增强Java脚本    72

5.6.3  Java脚本关联    72

5.6.4  Java脚本参数化    72

5.7  web_submit_data    73

5.8  web_custom_request    76

5.9  小结    80

第6章  全链路脚本开发    81

6.1  什么是全链路性能脚本    81

6.2  如何将脚本封装成.h头文件    83

6.3  业务场景对全链路脚本的影响    86

6.3.1  关键场景识别    87

6.3.2  确定主要场景导航路径    89

6.4  全链路脚本开发实例    89

6.5  小结    94

第7章  操作系统性能监控与调优    95

7.1  Windows操作系统监控    95

7.1.1  LoadRunner直接监控    95

7.1.2  Windows性能工具监控    96

7.1.3  Windows计数器    101

7.2  Linux/UNIX操作系统监控    107

7.2.1  程序执行模型    107

7.2.2  CPU监控    110

7.2.3  内存监控    115

7.2.4  磁盘监控    119

7.2.5  网络监控    124

7.3  nmon系统资源监控工具    128

7.3.1  nmon工作流程    128

7.3.2  nmon命令    129

7.3.3  结果分析    137

7.4  小结    138

第8章  Apache监控与调优    139

8.1  Apache目录结构    139

8.2  Apache配置文件    140

8.3  Apache监控    144

8.3.1  status模块监控    144

8.3.2  Apachetop监控    151

8.4  Apache调优    154

8.4.1  硬件与操作系统    154

8.4.2  运行时的配置    155

8.4.3  编译时的配置    159

8.5  MPM调优    161

8.5.1  选择MPM    161

8.5.2  MPM模块工作原理    162

8.5.3  MPM相关参数    165

8.6  日志文件分析    171

8.6.1  access_log日志文件    171

8.6.2  error_log日志文件    173

8.6.3  日志文件分析工具或指令    173

8.7  小结    175

第9章  Tomcat监控与调优    176

9.1  Tomcat结构体系    176

9.2  Tomcat监控    180

9.2.1  Status页监控    180

9.2.2  JConsole监控    182

9.2.3  Probe监控    192

9.3  Tomcat调优    197

9.3.1  Tomcat配置    198

9.3.2  连接器配置    202

9.3.3  APR配置    207

9.4  JVM调优    211

9.4.1  JVM内存模型    211

9.4.2  堆与栈    214

9.4.3  PermGen与Metaspace的区别    215

9.4.4  GC回收机制    218

9.4.5  垃圾收集算法    219

9.4.6  垃圾回收器    223

9.4.7  类加载过程    230

9.4.8  JVM参数设置    231

9.5  日志文件分析    236

9.5.1  日志文件类型    236

9.5.2  日志文件配置    236

9.6  小结    239

第10章  Nginx监控与调优    240

10.1  Nginx三大工作模块    241

10.1.1  Nginx启动、停止    241

10.1.2  Nginx工作原理    242

10.1.3  Nginx进程模型    243

10.1.4  Nginx Http请求过程    243

10.2  Nginx配置上下文    245

10.3  Nginx监控    245

10.3.1  status监控    246

10.3.2  Ngxtop监控    247

10.4  Nginx负载均衡    251

10.4.1  负载均衡概述    251

10.4.2  Nginx负载均衡工作原理    251

10.4.3  设置Http负载均衡    252

10.4.4  负载均衡算法    253

10.4.5  设置服务器权重    255

10.4.6  慢启动    257

10.4.7  限制连接数    257

10.4.8  开启会话持久性    257

10.5  健康检查    259

10.5.1  被动式健康检查    259

10.5.2  主动式健康检查    260

10.5.3  强制健康检查    262

10.6  Nginx压缩与解压    263

10.6.1  启用压缩    264

10.6.2  启用解缩    265

10.6.3  发送压缩文件    266

10.7  Nginx缓存    266

10.7.1  启用响应缓存    266

10.7.2  与进程相关的缓存    268

10.7.3  指定缓存的请求    268

10.7.4  限制或禁用响应缓存    269

10.7.5  清除缓存内容    269

10.7.6  字节范围缓存    271

10.7.7  组合缓存配置实例    272

10.8  小结    273

第11章  MS SQL数据库监控与调优    274

11.1  监控SQL Server资源    274

11.1.1  瓶颈类型    274

11.1.2  内存瓶颈    275

11.1.3  瓶颈类型    277

11.1.4  磁盘瓶颈    277

11.1.5  Wait Statistics监控    278

11.2  SQL Server等待类型    279

11.2.1  SQL等待类型    279

11.2.2  如何跟踪等待    289

11.2.3  阻塞与锁    291

11.3  SQL Profiler监控查询    296

11.3.1  SQL Trace相关术语    296

11.3.2  SQL Trace选项    299

11.3.3  捕获阻塞事件    303

11.3.4  捕获Showplan XML数据    305

11.3.5  捕获死锁图    308

11.3.6  SQL Profiler识别长时间查询    311

11.3.7  Profile Trace与System Monitor关联    315

11.4  索引调优    317

11.4.1  索引原理    317

11.4.2  填充因子    317

11.4.3  聚集索引    318

11.4.4  非聚集索引    321

11.4.5  堆表    323

11.4.6  用DTA调校索引    323

11.4.7  索引维护    329

11.5  T-SQL调优    333

11.5.1  NOT IN和NOT EXISTS    333

11.5.2  谓词的使用    334

11.5.3  为中间结果使用临时表    335

11.6  小结    336

第12章  MySQL性能监控与调优    337

12.1  使用LoadRunner直接压测MySQL    337

12.2  慢查询    339

12.2.1  查看慢查询相关设置    339

12.2.2  启动和设置慢查询    340

12.2.3  慢查询日志文件分析    340

12.2.4  慢查询日志分析工具

mysqldumpslow    341

12.3  EXPLAIN语句    343

12.3.1  EXPLAIN语法    343

12.3.2  EXPLAIN Output Columns输出列    344

12.3.3  EXPLAIN Join Types连接方式    347

12.3.4  EXPLAIN Extra Information额外信息    349

12.4  profile语句    352

12.4.1  开启profile    352

12.4.2  show profile    352

12.5  索引    357

12.5.1  索引结构    357

12.5.2  索引常用策略    361

12.5.3  索引优缺点    372

12.6  查询执行过程    372

12.7  SQL执行顺序    376

12.8  优化数据类型和优化访问数据    378

12.8.1  优化数据类型    378

12.8.2  常见数据类型    379

12.8.3  优化访问数据    383

12.9  状态监控    384

12.9.1  SHOW STATUS语句    384

12.9.2  SHOW STATUS变量    386

12.10  配置文件    389

12.10.1  使用选项文件    389

12.10.2  配置文件常见设置    390

12.11  小结    396

第13章  Redis性能监控与调优    397

13.1  使用LoadRunner调用Redis API进行压测    397

13.2  Redis Slowlog    401

13.2.1  什么是Slowlog    401

13.2.2  设置Slowlog    401

13.2.3  查看Slowlog    402

13.3  持久化    403

13.3.1  RDB持久化    404

13.3.2  AOF持久化    408

13.3.3  RDB和AOF的优缺点    411

13.3.4  备份策略RDB与AOF相互协同    411

13.4  主从复制    413

13.4.1  配置主从复制    413

13.4.2  断开复制    415

13.4.3  主从复制工作原理    416

13.4.4  心跳    421

13.4.5  master关闭持久化,保证复制的安全性    422

13.4.6  Redis复制如何处理过期的key    423

13.4.7  允许只写入N个附加的副本    423

13.4.8  只读性质的slave    424

13.4.9  重新启动和故障转移后的部分同步    424

13.5  哨兵    425

13.5.1  为什么需要Sentinel    425

13.5.2  部署Sentinel    425

13.5.3  主观下线和客观下线    427

13.5.4  故障转移    428

13.5.5  Sentinel配置项    429

13.6  内存优化    430

13.6.1  获取内存数据    430

13.6.2  内存消耗模型    432

13.6.3  内存上限设置    434

13.6.4  回收内存策略    434

13.7  性能测试    436

13.7.1  性能测试工具redis-benchmark    436

13.7.2  延迟监控与分析    439

13.7.3  big key    446

13.7.4  Hot key    448

13.7.5  缓存粒度    451

13.7.6  缓存穿透    452

13.7.7  缓存击穿    454

13.7.8  缓存雪崩    456

13.8  小结    457

第14章  前端性能监控与调优    458

14.1  前端监控工具YSlow    458

14.1.1  安装YSlow    458

14.1.2  使用YSlow    459

14.2  23大前端性能规则    462

14.2.1  最小化HTTP请求    462

14.2.2  使用内容发布网络    463

14.2.3  添加Expires头    463

14.2.4  Gzip组件    465

14.2.5  将样式表放在顶部    465

14.2.6  将脚本放在底部    466

14.2.7  避免使用CSS表达式    468

14.2.8  将JavaScript和CSS置于外部    469

14.2.9  减少DNS查找    471

14.2.10  精简JavaScript和CSS    472

14.2.11  避免重定向    474

14.2.12  删除重复脚本    478

14.2.13  配置ETags    478

14.2.14  使AJAX可缓存    480

14.2.15  AJAX使用Get请求    481

14.2.16  减少DOM数    483

14.2.17  避免空链接    485

14.2.18  避免404错误    486

14.2.19  减少Cookie的大小    488

14.2.20  使用一些空闲Cookie的域    492

14.2.21  避免过滤器    494

14.2.22  不要缩放图片    496

14.2.23  使用icon格式图片和使用缓存    496

14.3  小结    497


中国水利水电出版社店铺主页二维码
中国水利水电出版社 微信公众号认证
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

深入性能测试——LoadRunner性能测试、流程、监控、调优全程实战剖析(第二版)

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:Waterpub-Pro
中国水利水电出版社官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏