性能之巅洞悉系统企业与云计算计算机系统性能优化网络与互联网大型网络云计算大数据虚拟计算机系 pdf下载pdf下载

性能之巅洞悉系统企业与云计算计算机系统性能优化网络与互联网大型网络云计算大数据虚拟计算机系百度网盘pdf下载

作者:
简介:本篇提供书籍《性能之巅洞悉系统企业与云计算计算机系统性能优化网络与互联网大型网络云计算大数据虚拟计算机系》百度网盘pdf下载
出版社:钰恒店
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍



商品参数

商品基本信息,请以下列介绍为准
图书名称: 性能之巅:洞悉系统、企业与云计算
作者: Brendan Gregg(布兰登.格雷格) 著,徐章宁 吴寒思 陈磊 译
定价: 149.00
ISBN号: 9787121267925
出版社: 电子工业出版社


内容简介

大型网络、云计算、大数据和虚拟计算机系统的快速部署已经为性能优化带来了新的挑战。本书为此提供了解决方案。国际知名的性能优化专

家Brendan Gregg汇集了***的技术和工具来分析调优大型网络或云计算的环境。本书的内容包括现代化的性能分析和容量规划;与云计算相关

的新性能和可靠性挑战;方法、概念、术语、工具和指标;负载与结构问题的权衡;调整操作系统、CPU、内存、文件系统、磁盘、网络和总线

;调整虚拟系统;性能相关的编程语言问题,对C、 C 、 Java和node.js编写的应用程序分析。



作者简介

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.4ad hoc核对清单法 33

2.5.5问题陈述法 33

2.5.6科学法 34

2.5.7诊断循环 35

2.5.8工具法 35

2.5.9USE方法 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 UNIX 90

3.3.2 基于Solaris 90

3.3.3 基于Linux 93

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 /proc 103

4.2.2 /sys 108

4.2.3 kstat 109

4.2.4 延时核算 111

4.2.5 微状态核算 112

4.2.6 其他的观测源 112

4.3 DTrace 114

4.3.1静态和动态跟踪 115

4.3.2 探针 116

4.3.3 provider 116

4.3.4 参数 117

4.3.5 D语言 117

4.3.6 内置变量 118

4.3.7 action 118

4.3.8 变量类型 119

4.3.9 单行命令 121

4.3.10 脚本 121

4.3.11 开销 122

4.3.12 文档和资源 123

4.4 SystemTap 124

4.4.1 探针 124

4.4.2tapset 125

4.4.3action和内置变量 125

4.4.4示例 125

4.4.5 开销 127

4.4.6 文档和资源 128

4.5 perf 128

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/O 139

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章CPU 162

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,IPC 167

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 uptime 192

6.6.2 vmstat 194

6.6.3 mpstat 195

6.6.4 sar 197

6.6.5 ps 198

6.6.6 * 199

6.6.7 prstat 200

6.6.8 pidstat 201

6.6.9 time和ptime 202

6.6.10 DTrace 203

6.5.11 SystemTap 209

6.6.12 perf 209

6.6.13 cpustat 215

6.6.14 其他工具 216

6.6.15 可视化 216

6.7 实验 219

6.7.1 Ad Hoc 219

6.7.2 SysBench 220

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 周期分析 25