• 性能之巅:洞悉系统、企业与云计算
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

性能之巅:洞悉系统、企业与云计算

20.02 1.6折 128 九品

仅1件

北京东城
认证卖家担保交易快速发货售后保障

作者Brendan Gregg(布兰登·格雷格) 著;徐章宁、吴寒思、陈磊 译

出版社电子工业出版社

出版时间2015-08

版次1

装帧平装

货号A1

上书时间2024-12-28

图书-天下的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:九品
图书标准信息
  • 作者 Brendan Gregg(布兰登·格雷格) 著;徐章宁、吴寒思、陈磊 译
  • 出版社 电子工业出版社
  • 出版时间 2015-08
  • 版次 1
  • ISBN 9787121267925
  • 定价 128.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 628页
  • 字数 895千字
  • 正文语种 简体中文
  • 原版书名 Systems Performance
【内容简介】

  《性能之巅:洞悉系统、企业与云计算》基于Linux 和Solaris 系统阐述了适用于所有系统的性能理论和方法,Brendan Gregg 将业界普遍承认的性能方法、工具和指标收集于本书之中。阅读本书,你能洞悉系统运作的方式,学习到分析和提高系统与应用程序性能的方法,这些性能方法同样适用于大型企业与云计算这类较为复杂的环境的性能分析与调优。

【作者简介】

  Brendan Gregg,是Joyent公司的首席性能工程师,通过软件栈分析性能和扩展。在Sun Microsystem公司(之后为Oracle)作为首席性能和内核工程师期间,他的工作包括开发ZFS L2ARC,这是一个利用闪速存储器提升性能的文件系统。他还开发了许许多多的性能工具,部分工具收录在Mac OS X和Oracle Solaris 11的发行版中。他最近从事的工作覆盖针对Linux和illumos内核分析的性能可视化。他还是《DTrace》(Prentice Hall出版社,2011年)和《Solaris Performance and Tools》的两书合著者。


  译者介绍:

  ·徐章宁,1984年生,毕业于上海交通大学,硕士毕业后一直从事软件运维工作,在云存储与虚拟化领域浸沁多年,现于百度公司担任高级运维工程师,致力于大数据方向运维。钟爱开源软件,平日热爱读书和写作,《算法谜题》《编程格调》合译者。


  ·吴寒思,2010年毕业于南京大学软件学院,目前就职于EMC公司核心技术部从事文件系统研发工作,拥有2项文件系统方面专利。对程序设计、系统存储、云计算和操作系统有浓厚兴趣。


  ·陈磊,1979年生,毕业于同济大学。从事网络、系统和IT管理14年。曾就职于EMC中国卓越研发集团,任实验室经理。目前在互联网金融企业负责基础架构。兴趣广泛,尤其热爱开源软件和其它各类新兴技术的探讨和研究。

【目录】
第1章 绪论1
1.1 系统性能1
1.2 人员2
1.3 事情3
1.4 视角4
1.5 性能是充满挑战的4
1.5.1 性能是主观的4
1.5.2 系统是复杂的5
1.5.3 可能有多个问题并存6
1.6 延时6
1.7 动态跟踪7
1.8 云计算8
1.9 案例研究8
1.9.1 缓慢的磁盘9
1.9.2 软件变更10
1.9.3 更多阅读12
第2章 方法13
2.1 术语14
2.2 模型14
2.2.1 受测系统15
2.2.2 排队系统15
2.3 概念16
2.3.1 延时16
2.3.2 时间量级17
2.3.3 权衡三角18
2.3.4 调整的影响19
2.3.5 合适的层级19
2.3.6 性能建议的时间点20
2.3.7 负载vs.架构20
2.3.8 扩展性21
2.3.9 已知的未知22
2.3.10 指标23
2.3.11 使用率24
2.3.12 饱和度25
2.3.13 剖析26
2.3.14 缓存26
2.4 视角28
2.4.1 资源分析28
2.4.2 工作负载分析29
2.5 方法30
2.5.1 街灯反方法31
2.5.2 随机变动反方法32
2.5.3 责怪他人反方法32
2.5.4 ad hoc核对清单法33
2.5.5 问题陈述法33
2.5.6 科学法34
2.5.7 诊断循环35
2.5.8 工具法35
2.5.9 USE方法36
2.5.10  工作负载特征归纳42
2.5.11  向下挖掘分析43
2.5.12  延时分析44
2.5.13  R方法45
2.5.14  事件跟踪45
2.5.15  基础线统计47
2.5.16  静态性能调整47
2.5.17  缓存调优47
2.5.18  微基准测试48
2.6  建模49
2.6.1  企业vs.云49
2.6.2  可视化识别49
2.6.3  Amdahl扩展定律51
2.6.4  通用扩展定律52
2.6.5  排队理论52
2.7  容量规划56
2.7.1  资源极限56
2.7.2  因素分析58
2.7.3  扩展方案58
2.8  统计59
2.8.1  量化性能59
2.8.2  平均值60
2.8.3  标准方差、百分位数、中位数61
2.8.4  变异系数62
2.8.5  多重模态分布62
2.8.6  异常值63
2.9  监视63
2.9.1  基于时间的规律63
2.9.2  监测产品65
2.9.3  启动以来的信息统计65
2.10  可视化65
2.10.1  线图65
2.10.2  散点图66
2.10.3  热图67
2.10.4  表面图68
2.10.5  可视化工具69
2.11  练习70
2.12  参考70
第3章 操作系统72
3.1 术语72
3.2  背景73
3.2.1  内核73
3.2.2 栈76
3.2.2  中断和中断线程77
3.2.4  中断优先级78
3.2.5  进程78
3.2.6  系统调用80
3.2.7  虚拟内存82
3.2.8  内存管理82
3.2.9  调度器83
3.2.10  文件系统84
3.2.11  缓存86
3.2.12  网络87
3.2.13  设备驱动87
3.2.14  多处理器87
3.2.15  抢占88
3.2.16  资源管理88
3.2.17  观测性89
3.3  内核89
3.3.1  UNIX90
3.3.2  基于Solaris90
3.3.3  基于Linux93
3.3.4  差异95
3.4 练习96
3.5  参考96
第4章 观测工具98
4.1 工具类型98
4.1.1  计数器99
4.1.2  跟踪100
4.1.3  剖析101
4.1.4  监视(sar)102
4.2  观测来源103
4.2.1  /proc103
4.2.2  /sys108
4.2.3  kstat109
4.2.4  延时核算111
4.2.5  微状态核算112
4.2.6  其他的观测源112
4.3  DTrace114
4.3.1 静态和动态跟踪115
4.3.2  探针116
4.3.3  provider116
4.3.4  参数117
4.3.5  D语言117
4.3.6  内置变量118
4.3.7  action118
4.3.8  变量类型119
4.3.9  单行命令121
4.3.10  脚本121
4.3.11  开销122
4.3.12  文档和资源123
4.4  SystemTap124
4.4.1  探针124
4.4.2 tapset125
4.4.3 action和内置变量125
4.4.4 示例125
4.4.5  开销127
4.4.6  文档和资源128
4.5  perf128
4.6  观测工具的观测129
4.7  练习130
4.8  参考130
第5章 应用程序131
5.1  应用程序基础131
5.1.1  目标132
5.1.2  常见情况的优化133
5.1.3  观测性134
5.1.4  大O标记法134
5.2  应用程序性能技术135
5.2.1  选择I/O尺寸135
5.2.2  缓存136
5.2.3  缓冲区136
5.2.4  轮询136
5.2.5  并发和并行137
5.2.6  非阻塞I/O139
5.2.7  处理器绑定139
5.3  编程语言140
5.3.1  编译语言140
5.3.2  解释语言141
5.3.3  虚拟机142
5.3.4  垃圾回收142
5.4  方法和分析143
5.4.1  线程状态分析143
5.4.2  CPU剖析146
5.4.3  系统调用分析148
5.4.4  I/O剖析154
5.4.5  工作负载特征归纳155
5.4.6  USE方法155
5.4.7  向下挖掘法156
5.4.8  锁分析156
5.4.9  静态性能调优159
5.5  练习160
5.6  参考161
第6章 CPU162
6.1  术语163
6.2  模型163
6.2.1  CPU架构163
6.2.2  CPU内存缓存164
6.2.3  CPU运行队列165
6.3  概念165
6.3.1  时钟频率165
6.3.2  指令166
6.3.3  指令流水线166
6.3.4  指令宽度167
6.3.5  CPI,IPC167
6.3.6  使用率167
6.3.7  用户时间/内核时间168
6.3.8  饱和度168
6.3.9  抢占168
6.3.10  优先级反转169
6.3.11  多进程,多线程169
6.3.12  字长170
6.3.13  编译器优化171
6.4  架构171
6.4.1  硬件171
6.4.2  软件179
6.5  方法184
6.5.1  工具法184
6.5.2  USE方法185
6.5.3  负载特征归纳186
6.5.4  剖析187
6.5.5  周期分析188
6.5.6  性能监控189
6.5.7  静态性能调优189
6.5.8  优先级调优189
6.5.9  资源控制190
6.5.10  CPU绑定190
6.5.11  微型基准测试191
6.5.12  扩展191
6.6  分析192
6.6.1  uptime192
6.6.2  vmstat194
6.6.3  mpstat195
6.6.4  sar197
6.6.5  ps198
6.6.6  top199
6.6.7  prstat200
6.6.8  pidstat201
6.6.9  time和ptime202
6.6.10  DTrace203
6.5.11  SystemTap209
6.6.12  perf209
6.6.13  cpustat215
6.6.14  其他工具216
6.6.15  可视化216
6.7  实验219
6.7.1  Ad Hoc219
6.7.2  SysBench220
6.8  调优220
6.8.1  编译器选项221
6.8.2  调度优先级和调度类221
6.8.3  调度器选项221
6.8.4  进程绑定223
6.8.5  独占CPU组224
6.8.6  资源控制224
6.8.7  处理器选项(BIOS调优)224
6.9  练习225
6.10  参考资料226
第7章 内存228
7.1  术语229
7.2  概念229
7.2.1  虚拟内存230
7.2.2  换页230
7.2.3  按需换页231
7.2.4  过度提交233
7.2.5  交换233
7.2.6  文件系统缓存占用233
7.2.7  使用率和饱和度234
7.2.8  分配器234
7.2.9  字长234
7.3  架构234
7.3.1  硬件235
7.3.2  软件239
7.3.3  进程地址空间244
7.4  方法248
7.4.1  工具法249
7.4.2  USE方法249
7.4.3  使用特征归纳250
7.4.4  周期分析251
7.4.5  性能监测251
7.4.6  泄漏检测252
7.4.7  静态性能调优252
7.4.8  资源控制253
7.4.9  微基准测试253
7.5  分析253
7.5.1  vmstat254
7.5.2  sar256
7.5.3  slabtop259
7.5.4  ::kmstat260
7.5.5  ps261
7.5.6  top262
7.5.7  prstat263
7.5.8  pmap264
7.5.9  DTrace265
7.5.10  SystemTap269
7.5.11  其他工具269
7.6  调优270
7.6.1 可调参数271
7.6.2  多个页面大小273
7.6.3  分配器274
7.6.4  资源控制274
7.7  练习274
7.8  参考资料276
第8章 文件系统278
8.1 术语279
8.2 模型279
8.2.1 文件系统接口279
8.2.2  文件系统缓存280
8.2.3  二级缓存281
8.3  概念281
8.3.1  文件系统延时281
8.3.2  缓存282
8.3.3  随机与顺序I/O282
8.3.4  预取283
8.3.5  预读284
8.3.6  写回缓存284
8.3.7  同步写284
8.3.8  裸I/O和直接I/O285
8.3.9  非阻塞I/O285
8.3.10  内存映射文件286
8.3.11  元数据286
8.3.12  逻辑I/O vs.物理I/O287
8.3.13  操作并非不平等288
8.3.14  特殊文件系统289
8.3.15  访问时间戳289
8.3.16  容量289
8.4  架构290
8.4.1  文件系统I/O栈290
8.4.2  VFS291
8.4.3  文件系统缓存291
8.4.4  文件系统特性296
8.4.5  文件系统种类297
8.4.6  卷和池302
8.5  方法303
8.5.1  磁盘分析304
8.5.2  延时分析304
8.5.3  负载特征归纳306
8.5.4  性能监控308
8.5.5  事件跟踪308
8.5.6  静态性能调优309
8.5.7  缓存调优310
8.5.8  负载分离310
8.5.9  内存文件系统310
8.5.10  微型基准测试310
8.6  分析312
8.6.1  vfsstat312
8.6.2  fsstat313
8.6.3  strace、truss314
8.6.4  DTrace314
8.6.5  SystemTap323
8.6.6  LatencyTOP323
8.6.7  free324
8.6.8  top324
8.6.9  vmstat324
8.6.10  sar325
8.6.11  slabtop326
8.6.12  mdb ::kmastat327
8.6.13  fcachestat327
8.6.14  /proc/meminfo328
8.6.15  mdb ::memstat328
8.6.16  kstat329
8.6.17  其他工具330
8.6.18  可视化331
8.7  实验331
8.7.1  Ad Hoc332
8.7.2  微型基准测试工具332
8.7.3  缓存写回334
8.8  调优334
8.8.1  应用程序调用335
8.8.2  ext3336
8.8.3  ZFS336
8.9  练习338
8.10  参考资料339
第9章 磁盘341
9.1  术语342
9.2  模型342
9.2.1  简单磁盘342
9.2.2  缓存磁盘343
9.2.3  控制器344
9.3  概念344
9.3.1  测量时间344
9.3.2  时间尺度346
9.3.3  缓存347
9.3.4  随机 vs 连续I/O347
9.3.5  读/写比348
9.3.6  I/O大小348
9.3.7  IOPS并不平等349
9.3.8  非数据传输磁盘命令349
9.3.9  使用率349
9.3.10  饱和度350
9.3.11  I/O等待350
9.3.12  同步 vs 异步351
9.3.13  磁盘 vs 应用程序I/O351
9.4  架构352
9.4.1  磁盘类型352
9.4.2  接口357
9.4.3  存储类型358
9.4.4  操作系统磁盘I/O栈360
9.5  方法363
9.5.1  工具法364
9.5.2  USE方法364
9.5.3  性能监控365
9.5.4  负载特征归纳366
9.5.5  延时分析367
9.5.6  事件跟踪368
9.5.7  静态性能调优369
9.5.8  缓存调优370
9.5.9  资源控制370
9.5.10  微基准测试370
9.5.11  伸缩371
9.6  分析372
9.6.1  iostat373
9.6.2  sar380
9.6.3  pidstat381
9.6.4  DTrace382
9.6.5  SystemTap390
9.6.6  perf390
9.6.7  iotop391
9.6.8  iosnoop393
9.6.9  blktrace396
9.6.10  MegaCli397
9.6.11  smartctl398
9.6.12  可视化399
9.7  实验402
9.7.1  Ad Hoc402
9.7.2  自定义负载生成器403
9.7.3  微基准测试工具403
9.7.4  随机读示例403
9.8  调优404
9.8.1  操作系统可调参数404
9.8.2  磁盘设备可调参数406
9.8.3  磁盘控制器可调参数406
9.9  练习407
9.10  参考资料408
第10章 网络410
10.1 术语411
10.2 模型411
10.2.1 网络接口411
10.2.2 控制器412
10.2.3 协议栈412
10.3 概念413
10.3.1 网络和路由413
10.3.2 协议414
10.3.3 封装414
10.3.4 包长度414
10.3.5 延时415
10.3.6 缓冲417
10.3.7 连接积压队列417
10.3.8 接口协商417
10.3.9 使用率418
10.3.10 本地连接418
10.4 架构418
10.4.1 协议418
10.4.2  硬件421
10.4.3  软件423
10.5  方法427
10.5.1  工具法428
10.5.2  USE方法428
10.5.3  工作负载特征归纳429
10.5.4  延时分析430
10.5.5  性能监测431
10.5.6  数据包嗅探431
10.5.7  TCP分析432
10.5.8 挖掘分析433
10.5.9 静态性能调优433
10.5.10 资源控制434
10.5.11  微基准测试434
10.6  分析435
10.6.1  netstat435
10.6.2  sar440
10.6.3  ifconfig442
10.6.4  ip443
10.6.5  nicstat443
10.6.6  dladm444
10.6.7  ping445
10.6.8  traceroute445
10.6.9  pathchar446
10.6.10 tcpdump446
10.6.11  snoop447
10.6.12  Wireshark450
10.6.13  DTrace450
10.6.14  SystemTap461
10.6.15  perf461
10.6.16  其他工具462
10.7  实验463
10.7.1  iperf463
10.8  调优464
10.8.1  Linux465
10.8.2  Solaris467
10.8.3  配置469
10.9  练习470
10.10  参考471
第11章 云计算473
11.1  背景474
11.1.1  性价比474
11.1.2  可扩展的架构474
11.1.3  容量规划475
11.1.4  存储477
11.1.5  多租户477
11.2  OS虚拟化478
11.2.1  系统开销479
11.2.2  资源控制481
11.2.3  可观测性484
11.3  硬件虚拟化489
11.3.1  系统开销490
11.3.2  资源控制495
11.3.3  可观测性498
11.4  比较503
11.5  练习505
11.6  参考资料506
第12章 基准测试508
12.1  背景508
12.1.1  事情509
12.1.2  有效的基准测试509
12.1.3  基准测试之罪511
12.2  基准测试的类型516
12.2.1 微基准测试517
12.2.2  模拟518
12.2.3  回放519
12.2.4  行业标准519
12.3  方法521
12.3.1  被动基准测试521
12.3.2  主动基准测试522
12.3.3  CPU剖析524
12.3.4  USE方法525
12.3.5  工作负载特征归纳526
12.3.6  自定义基准测试526
12.3.7  逐渐增加负载526
12.3.8  完整性检查528
12.3.9  统计分析529
12.4  基准测试问题530
12.5  练习531
12.6  参考532
第13章 案例研究534
13.1  案例研究:红鲸534
13.1.1  问题陈述535
13.1.2  支持536
13.1.3  上手537
13.1.4  选择征途538
13.1.5  USE方法539
13.1.6  我们做完了吗542
13.1.7  二度出击542
13.1.8  基础543
13.1.9  忽略红鲸544
13.1.10  审问内核545
13.1.11  为什么546
13.1.12  尾声548
13.2  结语548
13.3  附加信息549
13.4  参考549
附录A USE法:Linux551
附录B USE法:Solaris556
附录C sar 总结561
附录D DTrace单行命令563
附录E 从DTrace到SystemTap573
附录F 精选练习题答案582
附录G 系统性能名人录585
点击展开 点击收起

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP