图书介绍

性能之巅 洞悉系统、企业与云计算pdf电子书版本下载

性能之巅  洞悉系统、企业与云计算
  • (美)格雷格著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121267925
  • 出版时间:2015
  • 标注页数:599页
  • 文件大小:113MB
  • 文件页数:646页
  • 主题词:计算机网络

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

性能之巅 洞悉系统、企业与云计算PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第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章 操作系统 73

3.1术语 73

3.2背景 74

3.2.1内核 74

3.2.2栈 77

3.2.3中断和中断线程 78

3.2.4中断优先级 79

3.2.5进程 79

3.2.6系统调用 81

3.2.7虚拟内存 83

3.2.8内存管理 83

3.2.9调度器 84

3.2.10文件系统 85

3.2.11缓存 87

3.2.12网络 88

3.2.13设备驱动 88

3.2.14多处理器 88

3.2.15抢占 89

3.2.16资源管理 89

3.2.17观测性 90

3.3内核 90

3.3.1 UNIX 91

3.3.2基于Solaris 91

3.3.3基于Linux 94

3.3.4差异 96

3.4练习 97

3.5参考 97

第4章 观测工具 99

4.1工具类型 99

4.1.1计数器 100

4.1.2跟踪 101

4.1.3剖析 102

4.1.4监视(sar) 103

4.2观测来源 104

4.2.1 /proc 104

4.2.2 /sys 109

4.2.3 kstat 110

4.2.4延时核算 112

4.2.5微状态核算 113

4.2.6其他的观测源 113

4.3 DTrace 115

4.3.1静态和动态跟踪 116

4.3.2探针 117

4.3.3 provider 117

4.3.4参数 118

4.3.5 D语言 118

4.3.6内置变量 119

4.3.7 action 119

4.3.8变量类型 120

4.3.9单行命令 122

4.3.10脚本 122

4.3.11开销 123

4.3.12文档和资源 124

4.4 SystemTap 125

4.4.1探针 125

4.4.2 tapset 126

4.4.3 action和内置变量 126

4.4.4示例 126

4.4.5开销 128

4.4.6文档和资源 129

4.5 perf 129

4.6观测工具的观测 130

4.7练习 131

4.8参考 131

第5章 应用程序 133

5.1应用程序基础 133

5.1.1目标 134

5.1.2常见情况的优化 135

5.1.3观测性 136

5.1.4大O标记法 136

5.2应用程序性能技术 137

5.2.1选择I/O尺寸 137

5.2.2缓存 138

5.2.3缓冲区 138

5.2.4轮询 138

5.2.5并发和并行 139

5.2.6非阻塞I/O 141

5.2.7处理器绑定 141

5.3编程语言 142

5.3.1编译语言 142

5.3.2解释语言 143

5.3.3虚拟机 144

5.3.4垃圾回收 144

5.4方法和分析 145

5.4.1线程状态分析 145

5.4.2 CPU剖析 148

5.4.3系统调用分析 150

5.4.4 I/O剖析 156

5.4.5工作负载特征归纳 157

5.4.6 USE方法 157

5.4.7向下挖掘法 158

5.4.8锁分析 158

5.4.9静态性能调优 161

5.5练习 162

5.6参考 163

第6章 CPU 165

6.1术语 166

6.2模型 166

6.2.1 CPU架构 166

6.2.2 CPU内存缓存 167

6.2.3 CPU运行队列 168

6.3概念 168

6.3.1时钟频率 168

6.3.2指令 169

6.3.3指令流水线 169

6.3.4指令宽度 170

6.3.5 CPI,IPC 170

6.3.6使用率 170

6.3.7用户时间/内核时间 171

6.3.8饱和度 171

6.3.9抢占 171

6.3.10优先级反转 172

6.3.11多进程,多线程 172

6.3.12字长 173

6.3.13编译器优化 174

6.4架构 174

6.4.1硬件 174

6.4.2软件 182

6.5方法 187

6.5.1工具法 187

6.5.2 USE方法 188

6.5.3负载特征归纳 189

6.5.4剖析 190

6.5.5周期分析 191

6.5.6性能监控 192

6.5.7静态性能调优 192

6.5.8优先级调优 192

6.5.9资源控制 193

6.5.10 CPU绑定 193

6.5.11微型基准测试 194

6.5.12扩展 194

6.6分析 195

6.6.1 uptime 195

6.6.2 vmstat 197

6.6.3 mpstat 198

6.6.4 sar 200

6.6.5 ps 201

6.6.6 top 202

6.6.7 prstat 203

6.6.8 pidstat 204

6.6.9 time和ptime 205

6.6.10 DTrace 206

6.6.11 SystemTap 212

6.6.12 perf 212

6.6.13 cpustat 218

6.6.14其他工具 219

6.6.15可视化 219

6.7实验 222

6.7.1 Ad Hoc 222

6.7.2 SysBench 223

6.8调优 223

6.8.1编译器选项 224

6.8.2调度优先级和调度类 224

6.8.3调度器选项 224

6.8.4进程绑定 226

6.8.5独占CPU组 227

6.8.6资源控制 227

6.8.7处理器选项(BIOS调优) 227

6.9练习 228

6.10参考资料 229

第7章 内存 231

7.1术语 232

7.2概念 232

7.2.1虚拟内存 233

7.2.2换页 233

7.2.3按需换页 234

7.2.4过度提交 236

7.2.5交换 236

7.2.6文件系统缓存占用 236

7.2.7使用率和饱和度 237

7.2.8分配器 237

7.2.9字长 237

7.3架构 237

7.3.1硬件 238

7.3.2软件 242

7.3.3进程地址空间 247

7.4方法 251

7.4.1工具法 252

7.4.2 USE方法 252

7.4.3使用特征归纳 253

7.4.4周期分析 254

7.4.5性能监测 254

7.4.6泄漏检测 255

7.4.7静态性能调优 255

7.4.8资源控制 256

7.4.9微基准测试 256

7.5分析 256

7.5.1 vmstat 257

7.5.2 sar 259

7.5.3 slabtop 262

7.5.4 ::kmstat 263

7.5.5 ps 264

7.5.6 top 265

7.5.7 prstat 266

7.5.8 pmap 267

7.5.9 DTrace 268

7.5.10 SystemTap 272

7.5.11其他工具 272

7.6调优 273

7.6.1可调参数 274

7.6.2多个页面大小 276

7.6.3分配器 277

7.6.4资源控制 277

7.7练习 277

7.8参考资料 279

第8章 文件系统 281

8.1术语 282

8.2模型 282

8.2.1文件系统接口 282

8.2.2文件系统缓存 283

8.2.3二级缓存 284

8.3概念 284

8.3.1文件系统延时 284

8.3.2缓存 285

8.3.3随机与顺序I/O 285

8.3.4预取 286

8.3.5预读 287

8.3.6写回缓存 287

8.3.7同步写 287

8.3.8裸I/O和直接I/O 288

8.3.9非阻塞I/O 288

8.3.10内存映射文件 289

8.3.11元数据 289

8.3.12逻辑I/O vs.物理I/O 290

8.3.13操作并非不平等 291

8.3.14特殊文件系统 292

8.3.15访问时间戳 292

8.3.16容量 292

8.4架构 293

8.4.1文件系统I/O栈 293

8.4.2 VFS 294

8.4.3文件系统缓存 294

8.4.4文件系统特性 299

8.4.5文件系统种类 300

8.4.6卷和池 305

8.5方法 306

8.5.1磁盘分析 307

8.5.2延时分析 307

8.5.3负载特征归纳 309

8.5.4性能监控 311

8.5.5事件跟踪 311

8.5.6静态性能调优 312

8.5.7缓存调优 313

8.5.8负载分离 313

8.5.9内存文件系统 313

8.5.10微型基准测试 313

8.6分析 315

8.6.1 vfsstat 315

8.6.2 fsstat 316

8.6.3 strace、truss 317

8.6.4 DTrace 317

8.6.5 SystemTap 326

8.6.6 LatencyTOP 326

8.6.7 free 327

8.6.8 top 327

8.6.9 vmstat 327

8.6.10 sar 328

8.6.11 slabtop 329

8.6.12 mdb::kmastat 330

8.6.13 fcachestat 330

8.6.14/proc/meminfo 331

8.6.15 mdb::memstat 331

8.6.16 kstat 332

8.6.17其他工具 333

8.6.18可视化 334

8.7实验 334

8.7.1 Ad Hoc 335

8.7.2微型基准测试工具 335

8.7.3缓存写回 337

8.8调优 337

8.8.1应用程序调用 338

8.8.2 ext3 339

8.8.3 ZFS 339

8.9练习 341

8.10参考资料 342

第9章 磁盘 345

9.1术语 346

9.2模型 346

9.2.1简单磁盘 346

9.2.2缓存磁盘 347

9.2.3控制器 348

9.3概念 348

9.3.1测量时间 348

9.3.2时间尺度 350

9.3.3缓存 351

9.3.4随机vs.连续I/O 351

9.3.5读/写比 352

9.3.6 I/O大小 352

9.3.7 IOPS并不平等 353

9.3.8非数据传输磁盘命令 353

9.3.9使用率 353

9.3.10饱和度 354

9.3.11 I/O等待 354

9.3.12同步vs.异步 355

9.3.13磁盘vs.应用程序I/O 355

9.4架构 356

9.4.1磁盘类型 356

9.4.2接口 361

9.4.3存储类型 362

9.4.4操作系统磁盘I/O栈 364

9.5方法 367

9.5.1工具法 368

9.5.2 USE方法 368

9.5.3性能监控 369

9.5.4负载特征归纳 370

9.5.5延时分析 371

9.5.6事件跟踪 372

9.5.7静态性能调优 373

9.5.8缓存调优 374

9.5.9资源控制 374

9.5.10微基准测试 374

9.5.11伸缩 375

9.6分析 376

9.6.1 iostat 377

9.6.2 sar 384

9.6.3 pidstat 385

9.6.4 DTrace 386

9.6.5 SystemTap 394

9.6.6 perf 394

9.6.7 iotop 395

9.6.8 iosnoop 397

9.6.9 blktrace 400

9.6.10 MegaCli 401

9.6.11 smartctl 402

9.6.12可视化 403

9.7实验 406

9.7.1 Ad Hoc 406

9.7.2自定义负载生成器 407

9.7.3微基准测试工具 407

9.7.4随机读示例 407

9.8调优 408

9.8.1操作系统可调参数 408

9.8.2磁盘设备可调参数 410

9.8.3磁盘控制器可调参数 410

9.9练习 411

9.10参考资料 412

第10章 网络 415

10.1术语 416

10.2模型 416

10.2.1网络接口 416

10.2.2控制器 417

10.2.3协议栈 417

10.3概念 418

10.3.1网络和路由 418

10.3.2协议 419

10.3.3封装 419

10.3.4包长度 419

10.3.5延时 420

10.3.6缓冲 422

10.3.7连接积压队列 422

10.3.8接口协商 422

10.3.9使用率 423

10.3.10本地连接 423

10.4架构 423

10.4.1协议 423

10.4.2硬件 426

10.4.3软件 428

10.5方法 432

10.5.1工具法 433

10.5.2 USE方法 433

10.5.3工作负载特征归纳 434

10.5.4延时分析 435

10.5.5性能监测 436

10.5.6数据包嗅探 436

10.5.7 TCP分析 437

10.5.8挖掘分析 438

10.5.9静态性能调优 438

10.5.10资源控制 439

10.5.11微基准测试 439

10.6分析 440

10.6.1 netstat 440

10.6.2 sar 445

10.6.3 ifconfig 447

10.6.4 ip 448

10.6.5 nicstat 448

10.6.6 dladm 449

10.6.7 ping 450

10.6.8 traceroute 450

10.6.9 pathchar 451

10.6.10 tcpdump 451

10.6.11 snoop 452

10.6.12 Wireshark 455

10.6.13 DTrace 455

10.6.14 SystemTap 466

10.6.15 perf 466

10.6.16其他工具 467

10.7实验 468

10.7.1 iperf 468

10.8调优 469

10.8.1 Linux 470

10.8.2 Solaris 472

10.8.3 配置 474

10.9练习 475

10.10参考 476

第11章 云计算 479

11.1背景 480

11.1.1性价比 480

11.1.2可扩展的架构 480

11.1.3容量规划 481

11.1.4存储 483

11.1.5多租户 483

11.2 OS虚拟化 484

11.2.1系统开销 485

11.2.2资源控制 487

11.2.3可观测性 490

11.3硬件虚拟化 495

11.3.1系统开销 496

11.3.2资源控制 501

11.3.3可观测性 504

11.4比较 509

11.5练习 511

11.6参考资料 512

第12章 基准测试 515

12.1背景 515

12.1.1事情 516

12.1.2有效的基准测试 516

12.1.3基准测试之罪 518

12.2基准测试的类型 523

12.2.1微基准测试 524

12.2.2模拟 525

12.2.3回放 526

12.2.4行业标准 526

12.3方法 528

12.3.1被动基准测试 528

12.3.2主动基准测试 529

12.3.3 CPU剖析 531

12.3.4 USE方法 532

12.3.5工作负载特征归纳 533

12.3.6自定义基准测试 533

12.3.7逐渐增加负载 533

12.3.8完整性检查 535

12.3.9统计分析 536

12.4基准测试问题 537

12.5练习 538

12.6参考 539

第13章 案例研究 541

13.1案例研究:红鲸 541

13.1.1问题陈述 542

13.1.2支持 543

13.1.3上手 544

13.1.4选择征途 545

13.1.5 USE方法 546

13.1.6我们做完了吗 549

13.1.7二度出击 549

13.1.8基础 550

13.1.9忽略红鲸 551

13.1.10审问内核 552

13.1.11为什么 553

13.1.12尾声 555

13.2结语 555

13.3附加信息 556

13.4参考 556

附录A USE法:Linux 559

附录B USE法:Solaris 565

附录C sar总结 571

附录D DTrace单行命令 573

附录E 从DTrace到SystemTap 583

附录F 精选练习题答案 593

附录G 系统性能名人录 597

精品推荐