性能之巅 洞悉系统、企业与云计算 + 云落谁家?OpenStack基

性能之巅 洞悉系统、企业与云计算 + 云落谁家?OpenStack基 pdf epub mobi txt 电子书 下载 2025

图书标签:
  • 性能优化
  • 系统架构
  • 企业级应用
  • 云计算
  • OpenStack
  • 分布式系统
  • 性能测试
  • 运维
  • 技术管理
  • 云战略
想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 哈尔滨市学府书店图书专营店
出版社: 电子工业出版社
ISBN:116
版次:1
商品编码:10395752830

具体描述

基本信息 I S B N:9787121267925 书 名:性能之巅 洞悉系统、企业与云计算 作 者:格雷格 出 版 社:电子工业 出版日期 :2015-08-01 页 数 :628页 开 本 :16开 定 价 :128.00 I S B N:9787121276491 书 名:云落谁家?OpenStack基于场景的架构设计实践 作 者:占海,张继勇 出 版 社:电子工业出版社 出版日期 :2016-03 页 数 :224页 开 本 :16开 定 价 :59.00 内容简介 书名:性能之巅 洞悉系统、企业与云计算 编辑推荐 适读人群 :各个企业的网络维护人员,高校计算机专业学生 本书是企业和云计算环境运维人员的必备指导:系统管理员、网络管理员、数据库管理员和Web管理员、开发工程师以及其他专业人员。对于新接触性能优化的学生等人员,本书还提供了饱含Gregg 丰富的教学经验的练习题目。 □ 现代性能分析与调优:术语、概念、模型、方法和技术 □ 动态跟踪技术与工具,收录DTrace、SystemTap和Perf示例 □ 内核内幕:揭示OS在做什么 □ 如何使用系统观测工具、接口和框架 □ 理解和监控应用程序性能 □ 优化CPU:处理器、核、硬件线程、缓存、互联与内核调度 □ 内存优化:虚拟内存、换页、交换、内存架构、总线、地址空间与分配器 □ 文件系统I/O,包括缓存 □ 存储设备/控制器、磁盘I/O工作负载、RAID,以及内核I/O □ 网络相关性能问题:协议、套接字、网卡和物理连接。 □ OS和基于硬件虚拟化的性能实现,以及云计算所遇到的新问题 □ 基准测试:如何得到的结果并避免一般性的错误 内容提要 《性能之巅:洞悉系统、企业与云计算》基于Linux 和Solaris 系统阐述了适用于所有系统的性能理论和方法,BrendaGregg 将业界普遍承认的性能方法、工具和指标收集于本书之中。阅读本书, 你能洞悉系统运作的方式,学习到分析和提高系统与应用程序性能的方法,这些性能方法同样适用于企业与云计算这类较为复杂的环境的性能分析与调优。 目录 第1章 绪论t1 1.1 系统性能t1 1.2 人员t2 1.3 事情t3 1.4 视角t4 1.5 性能是充满挑战的t4 1.5.1 性能是主观的t4 1.5.2 系统是复杂的t5 1.5.3 可能有多个问题并存t6 1.6 延时t6 1.7 动态跟踪t7 1.8 云计算t8 1.9 案例研究t8 1.9.1 缓慢的磁盘t9 1.9.2 软件变更t10 1.9.3 更多阅读t12 第2章 方法t13 2.1 术语t14 2.2 模型t14 2.2.1 受测系统t15 2.2.2 排队系统t15 2.3 概念t16 2.3.1 延时t16 2.3.2 时间量级t17 2.3.3 权衡三角t18 2.3.4 调整的影响t19 2.3.5 合适的层级t19 2.3.6 性能建议的时间点t20 2.3.7 负载vs.架构t20 2.3.8 扩展性t21 2.3.9 已知的未知t22 2.3.10 指标t23 2.3.11 使用率t24 2.3.12 饱和度t25 2.3.13 剖析t26 2.3.14 缓存t26 2.4 视角t28 2.4.1 资源分析t28 2.4.2 工作负载分析t29 2.5 方法t30 2.5.1 街灯反方法t31 2.5.2 随机变动反方法t32 2.5.3 责怪他人反方法t32 2.5.4 ad hoc核对清单法t33 2.5.5 问题陈述法t33 2.5.6 科学法t34 2.5.7 诊断循环t35 2.5.8 工具法t35 2.5.9 USE方法t36 2.5.10 工作负载特征归纳t42 2.5.11 向下挖掘分析t43 2.5.12 延时分析t44 2.5.13 R方法t45 2.5.14 事件跟踪t45 2.5.15 基础线统计t47 2.5.16 静态性能调整t47 2.5.17 缓存调优t47 2.5.18 微基准测试t48 2.6 建模t49 2.6.1 企业vs.云t49 2.6.2 可视化识别t49 2.6.3 Amdahl扩展定律t51 2.6.4 通用扩展定律t52 2.6.5 排队理论t52 2.7 容量规划t56 2.7.1 资源极限t56 2.7.2 因素分析t58 2.7.3 扩展方案t58 2.8 统计t59 2.8.1 量化性能t59 2.8.2 平均值t60 2.8.3 标准方差、百分位数、中位数t61 2.8.4 变异系数t62 2.8.5 多重模态分布t62 2.8.6 异常值t63 2.9 监视t63 2.9.1 基于时间的规律t63 2.9.2 监测产品t65 2.9.3 启动以来的信息统计t65 2.10 可视化t65 2.10.1 线图t65 2.10.2 散点图t66 2.10.3 热图t67 2.10.4 表面图t68 2.10.5 可视化工具t69 2.11 练习t70 2.12 参考t70 第3章 操作系统t72 3.1 术语t72 3.2 背景t73 3.2.1 内核t73 3.2.2 栈t76 3.2.2 中断和中断线程t77 3.2.4 中断优先级t78 3.2.5 进程t78 3.2.6 系统调用t80 3.2.7 虚拟内存t82 3.2.8 内存管理t82 3.2.9 调度器t83 3.2.10 文件系统t84 3.2.11 缓存t86 3.2.12 网络t87 3.2.13 设备驱动t87 3.2.14 多处理器t87 3.2.15 抢占t88 3.2.16 资源管理t88 3.2.17 观测性t89 3.3 内核t89 3.3.1 UNIXt90 3.3.2 基于Solarist90 3.3.3 基于Linuxt93 3.3.4 差异t95 3.4 练习t96 3.5 参考t96 第4章 观测工具t98 4.1 工具类型t98 4.1.1 计数器t99 4.1.2 跟踪t100 4.1.3 剖析t101 4.1.4 监视(sar)t102 4.2 观测来源t103 4.2.1 /proct103 4.2.2 /syst108 4.2.3 kstatt109 4.2.4 延时核算t111 4.2.5 微状态核算t112 4.2.6 其他的观测源t112 4.3 DTracet114 4.3.1 静态和动态跟踪t115 4.3.2 探针t116 4.3.3 providert116 4.3.4 参数t117 4.3.5 D语言t117 4.3.6 内置变量t118 4.3.7 actiont118 4.3.8 变量类型t119 4.3.9 单行命令t121 4.3.10 脚本t121 4.3.11 开销t122 4.3.12 文档和资源t123 4.4 SystemTapt124 4.4.1 探针t124 4.4.2 tapsett125 4.4.3 action和内置变量t125 4.4.4 示例t125 4.4.5 开销t127 4.4.6 文档和资源t128 4.5 perft128 4.6 观测工具的观测t129 4.7 练习t130 4.8 参考t130 第5章 应用程序t131 5.1 应用程序基础t131 5.1.1 目标t132 5.1.2 常见情况的优化t133 5.1.3 观测性t134 5.1.4 大O标记法t134 5.2 应用程序性能技术t135 5.2.1 选择I/O尺寸t135 5.2.2 缓存t136 5.2.3 缓冲区t136 5.2.4 轮询t136 5.2.5 并发和并行t137 5.2.6 非阻塞I/Ot139 5.2.7 处理器绑定t139 5.3 编程语言t140 5.3.1 编译语言t140 5.3.2 解释语言t141 5.3.3 虚拟机t142 5.3.4 垃圾回收t142 5.4 方法和分析t143 5.4.1 线程状态分析t143 5.4.2 CPU剖析t146 5.4.3 系统调用分析t148 5.4.4 I/O剖析t154 5.4.5 工作负载特征归纳t155 5.4.6 USE方法t155 5.4.7 向下挖掘法t156 5.4.8 锁分析t156 5.4.9 静态性能调优t159 5.5 练习t160 5.6 参考t161 第6章 CPUt162 6.1 术语t163 6.2 模型t163 6.2.1 CPU架构t163 6.2.2 CPU内存缓存t164 6.2.3 CPU运行队列t165 6.3 概念t165 6.3.1 时钟频率t165 6.3.2 指令t166 6.3.3 指令流水线t166 6.3.4 指令宽度t167 6.3.5 CPI,IPCt167 6.3.6 使用率t167 6.3.7 用户时间/内核时间t168 6.3.8 饱和度t168 6.3.9 抢占t168 6.3.10 优先级反转t169 6.3.11 多进程,多线程t169 6.3.12 字长t170 6.3.13 编译器优化t171 6.4 架构t171 6.4.1 硬件t171 6.4.2 软件t179 6.5 方法t184 6.5.1 工具法t184 6.5.2 USE方法t185 6.5.3 负载特征归纳t186 6.5.4 剖析t187 6.5.5 周期分析t188 6.5.6 性能监控t189 6.5.7 静态性能调优t189 6.5.8 优先级调优t189 6.5.9 资源控制t190 6.5.10 CPU绑定t190 6.5.11 微型基准测试t191 6.5.12 扩展t191 6.6 分析t192 6.6.1 uptimet192 6.6.2 vmstatt194 6.6.3 mpstatt195 6.6.4 sart197 6.6.5 pst198 6.6.6 topt199 6.6.7 prstatt200 6.6.8 pidstatt201 6.6.9 time和ptimet202 6.6.10 DTracet203 6.5.11 SystemTapt209 6.6.12 perft209 6.6.13 cpustatt215 6.6.14 其他工具t216 6.6.15 可视化t216 6.7 实验t219 6.7.1 Ad Hoct219 6.7.2 SysBencht220 6.8 调优t220 6.8.1 编译器选项t221 6.8.2 调度优先级和调度类t221 6.8.3 调度器选项t221 6.8.4 进程绑定t223 6.8.5 独占CPU组t224 6.8.6 资源控制t224 6.8.7 处理器选项(BIOS调优)t224 6.9 练习t225 6.10 参考资料t226 第7章 内存t228 7.1 术语t229 7.2 概念t229 7.2.1 虚拟内存t230 7.2.2 换页t230 7.2.3 按需换页t231 7.2.4 过度提交t233 7.2.5 交换t233 7.2.6 文件系统缓存占用t233 7.2.7 使用率和饱和度t234 7.2.8 分配器t234 7.2.9 字长t234 7.3 架构t234 7.3.1 硬件t235 7.3.2 软件t239 7.3.3 进程地址空间t244 7.4 方法t248 7.4.1 工具法t249 7.4.2 USE方法t249 7.4.3 使用特征归纳t250 7.4.4 周期分析t251 7.4.5 性能监测t251 7.4.6 泄漏检测t252 7.4.7 静态性能调优t252 7.4.8 资源控制t253 7.4.9 微基准测试t253 7.5 分析t253 7.5.1 vmstatt254 7.5.2 sart256 7.5.3 slabtopt259 7.5.4 ::kmstatt260 7.5.5 pst261 7.5.6 topt262 7.5.7 prstatt263 7.5.8 pmapt264 7.5.9 DTracet265 7.5.10 SystemTapt269 7.5.11 其他工具t269 7.6 调优t270 7.6.1 可调参数t271 7.6.2 多个页面大小t273 7.6.3 分配器t274 7.6.4 资源控制t274 7.7 练习t274 7.8 参考资料t276 第8章 文件系统t278 8.1 术语t279 8.2 模型t279 8.2.1 文件系统接口t279 8.2.2 文件系统缓存t280 8.2.3 二级缓存t281 8.3 概念t281 8.3.1 文件系统延时t281 8.3.2 缓存t282 8.3.3 随机与顺序I/Ot282 8.3.4 预取t283 8.3.5 预读t284 8.3.6 写回缓存t284 8.3.7 同步写t284 8.3.8 裸I/O和直接I/Ot285 8.3.9 非阻塞I/Ot285 8.3.10 内存映射文件t286 8.3.11 元数据t286 8.3.12 逻辑I/O vs.物理I/Ot287 8.3.13 操作并非不平等t288 8.3.14 特殊文件系统t289 8.3.15 访问时间戳t289 8.3.16 容量t289 8.4 架构t290 8.4.1 文件系统I/O栈t290 8.4.2 VFSt291 8.4.3 文件系统缓存t291 8.4.4 文件系统特性t296 8.4.5 文件系统种类t297 8.4.6 卷和池t302 8.5 方法t303 8.5.1 磁盘分析t304 8.5.2 延时分析t304 8.5.3 负载特征归纳t306 8.5.4 性能监控t308 8.5.5 事件跟踪t308 8.5.6 静态性能调优t309 8.5.7 缓存调优t310 8.5.8 负载分离t310 8.5.9 内存文件系统t310 8.5.10 微型基准测试t310 8.6 分析t312 8.6.1 vfsstatt312 8.6.2 fsstatt313 8.6.3 strace、trusst314 8.6.4 DTracet314 8.6.5 SystemTapt323 8.6.6 LatencyTOPt323 8.6.7 freet324 8.6.8 topt324 8.6.9 vmstatt324 8.6.10 sart325 8.6.11 slabtopt326 8.6.12 mdb ::kmastatt327 8.6.13 fcachestatt327 8.6.14 /proc/meminfot328 8.6.15 mdb ::memstatt328 8.6.16 kstatt329 8.6.17 其他工具t330 8.6.18 可视化t331 8.7 实验t331 8.7.1 Ad Hoct332 8.7.2 微型基准测试工具t332 8.7.3 缓存写回t334 8.8 调优t334 8.8.1 应用程序调用t335 8.8.2 ext3t336 8.8.3 ZFSt336 8.9 练习t338 8.10 参考资料t339 第9章 磁盘t341 9.1 术语t342 9.2 模型t342 9.2.1 简单磁盘t342 9.2.2 缓存磁盘t343 9.2.3 控制器t344 9.3 概念t344 9.3.1 测量时间t344 9.3.2 时间尺度t346 9.3.3 缓存t347 9.3.4 随机 vs 连续I/Ot347 9.3.5 读/写比t348 9.3.6 I/O大小t348 9.3.7 IOPS并不平等t349 9.3.8 非数据传输磁盘命令t349 9.3.9 使用率t349 9.3.10 饱和度t350 9.3.11 I/O等待t350 9.3.12 同步 vs 异步t351 9.3.13 磁盘 vs 应用程序I/Ot351 9.4 架构t352 9.4.1 磁盘类型t352 9.4.2 接口t357 9.4.3 存储类型t358 9.4.4 操作系统磁盘I/O栈t360 9.5 方法t363 9.5.1 工具法t364 9.5.2 USE方法t364 9.5.3 性能监控t365 9.5.4 负载特征归纳t366 9.5.5 延时分析t367 9.5.6 事件跟踪t368 9.5.7 静态性能调优t369 9.5.8 缓存调优t370 9.5.9 资源控制t370 9.5.10 微基准测试t370 9.5.11 伸缩t371 9.6 分析t372 9.6.1 iostatt373 9.6.2 sart380 9.6.3 pidstatt381 9.6.4 DTracet382 9.6.5 SystemTapt390 9.6.6 perft390 9.6.7 iotopt391 9.6.8 iosnoopt393 9.6.9 blktracet396 9.6.10 MegaClit397 9.6.11 smartctlt398 9.6.12 可视化t399 9.7 实验t402 9.7.1 Ad Hoct402 9.7.2 自定义负载生成器t403 9.7.3 微基准测试工具t403 9.7.4 随机读示例t403 9.8 调优t404 9.8.1 操作系统可调参数t404 9.8.2 磁盘设备可调参数t406 9.8.3 磁盘控制器可调参数t406 9.9 练习t407 9.10 参考资料t408 第10章 网络t410 10.1 术语t411 10.2 模型t411 10.2.1 网络接口t411 10.2.2 控制器t412 10.2.3 协议栈t412 10.3 概念t413 10.3.1 网络和路由t413 10.3.2 协议t414 10.3.3 封装t414 10.3.4 包长度t414 10.3.5 延时t415 10.3.6 缓冲t417 10.3.7 连接积压队列t417 10.3.8 接口协商t417 10.3.9 使用率t418 10.3.10 本地连接t418 10.4 架构t418 10.4.1 协议t418 10.4.2 硬件t421 10.4.3 软件t423 10.5 方法t427 10.5.1 工具法t428 10.5.2 USE方法t428 10.5.3 工作负载特征归纳t429 10.5.4 延时分析t430 10.5.5 性能监测t431 10.5.6 数据包嗅探t431 10.5.7 TCP分析t432 10.5.8 挖掘分析t433 10.5.9 静态性能调优t433 10.5.10 资源控制t434 10.5.11 微基准测试t434 10.6 分析t435 10.6.1 netstatt435 10.6.2 sart440 10.6.3 ifconfigt442 10.6.4 ipt443 10.6.5 nicstatt443 10.6.6 dladmt444 10.6.7 pingt445 10.6.8 traceroutet445 10.6.9 pathchart446 10.6.10 tcpdumpt446 10.6.11 snoopt447 10.6.12 Wiresharkt450 10.6.13 DTracet450 10.6.14 SystemTapt461 10.6.15 perft461 10.6.16 其他工具t462 10.7 实验t463 10.7.1 iperft463 10.8 调优t464 10.8.1 Linuxt465 10.8.2 Solarist467 10.8.3 配置t469 10.9 练习t470 10.10 参考t471 第11章 云计算t473 11.1 背景t474 11.1.1 t474 11.1.2 可扩展的架构t474 11.1.3 容量规划t475 11.1.4 存储t477 11.1.5 多租户t477 11.2 OS虚拟化t478 11.2.1 系统开销t479 11.2.2 资源控制t481 11.2.3 可观测性t484 11.3 硬件虚拟化t489 11.3.1 系统开销t490 11.3.2 资源控制t495 11.3.3 可观测性t498 11.4 比较t503 11.5 练习t505 11.6 参考资料t506 第12章 基准测试t508 12.1 背景t508 12.1.1 事情t509 12.1.2 有效的基准测试t509 12.1.3 基准测试之罪t511 12.2 基准测试的类型t516 12.2.1 微基准测试t517 12.2.2 模拟t518 12.2.3 回放t519 12.2.4 行业标准t519 12.3 方法t521 12.3.1 被动基准测试t521 12.3.2 主动基准测试t522 12.3.3 CPU剖析t524 12.3.4 USE方法t525 12.3.5 工作负载特征归纳t526 12.3.6 自定义基准测试t526 12.3.7 逐渐增加负载t526 12.3.8 完整性检查t528 12.3.9 统计分析t529 12.4 基准测试问题t530 12.5 练习t531 12.6 参考t532 第13章 案例研究t534 13.1 案例研究:红鲸t534 13.1.1 问题陈述t535 13.1.2 支持t536 13.1.3 上手t537 13.1.4 选择征途t538 13.1.5 USE方法t539 13.1.6 我们做完了吗t542 13.1.7 二度出击t542 13.1.8 基础t543 13.1.9 忽略红鲸t544 13.1.10 审问内核t545 13.1.11 为什么t546 13.1.12 尾声t548 13.2 结语t548 13.3 附加信息t549 13.4 参考t549 附录A USE法:Linuxt551 附录B USE法:Solarist556 附录C sar 总结t561 附录D DTrace单行命令t563 附录E 从DTrace到SystemTapt573 附录F 精选练习题答案t582 附录G 系统性能名人录t585 作者介绍 BrendaGregg,是Joyent公司的首席性能工程师,通过软件栈分析性能和扩展。在SuMicrosystem公司(之后为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中国卓越研发集团,任实验室经理。目前在互联网金融企业负责基础架构。兴趣广泛,尤其热爱开源软件和其它各 类新兴技术的探讨和研究。 序言 我做分布式机器学习系统有八年了,其间很多时候要面对系统分析的问题。但是坦诚的说,大部分情况下我都只能尽快地找一个“近似”方法,处在没有时间深入琢磨上述系统问题的窘境。看到《 系能之巅:洞悉系统、企业与云计算》一书之后,不禁眼前一亮。这本书从绪论之后,就开始介绍“方法”——概念、模型、观测和实验手段。作者不仅利用操作系统自带的观测工具,还自己开发了一 套深入分析观测结果的脚本,这就是有名的DTrace Toolkit(大家可以直接找来使用)。《性能之巅》一书介绍的实验和观测方法,包括内存、CPU、文件系统、存储硬件、网络等各个方面。而且,在介 绍方法之前会深入介绍系统原理——我没法期望更多了! ——王益 Linkedin高级主任分析师 书的作者Gregg先生是业内性能优化方面大名鼎鼎的人物,早年在Sun公司的时候是性能主管和内核工程师,也是大名鼎鼎的DTrace的开发人员,要知道DTrace可是众多trace类工具中知名的,并且先 后被移植到了很多别的OS上。全书统篇都在讨论性能优化,对于所有相关问题的认识,我相信读者在通读全书后会有不一样的感觉。记住,不要只读一遍,每一遍都必有不同的体会。 ——丛磊 新浪SAE创始人/总负责人 与软件瑕疵类似,性能问题也可能危害巨大!更可怕的是,性能方面的问题容易促发隐藏在软件深处的瑕疵,直接导致软件崩溃或者其它无法预计的故障。不论调试,还是调优,对软件工程师的技 术要都求很高。很高兴看到有这样一本关于系统优化的好书引进到国内。 ——张银奎 专业调试专家,《软件调试》和《格蠹汇编》作者 2015年7月22日于上海格蠹轩 纵观全书,作者建立了系统性能优化的体系框架,并且骨肉丰满。很明显,他不仅擅长某方面的性能优化,更是全方位的专家,加之作为DTrace(一种可动态检测进程等状态的工具)主要开发者, 使得本书的说服力和含金量大增。本书让我们有机会系统学习和掌握性能优化的各方面,有机会建立一种高屋建瓴的全局观,在面对复杂系统问题时再不会手足无措,或只能盲人摸象。Linux系统演化至 今,基础的体系架构和关键组件并未发生多大改变,这使得这本好书即使再历经多年,价值毫无衰减,反而历久弥新。 ——萧田国 触控科技运维总监 高效运维社区创始人 《性能之巅》以一种奇妙而到位的方式,把高屋建瓴的视角和脚踏实地的实践结合了起来,对性能这一复杂、微妙甚至有些神秘的话题进行了外科手术式的解析,读来真是让人感觉豁然开朗。 全书以罕见的遍历式结构,对软件系统的每一个部件都如庖丁解牛般加以剖析,几乎涉及到业务的每一个细节。然而,这些细节并非简单的罗列,而是每一段论述都与具体的角色和场景紧密结合, 取舍之间极见智慧。方法论更是不单说理,而是通过一个又一个的具体实例,逐步地建构起来,并反复运用于各个部件之上,使读者明白原理普适性的同时也知道怎样举一反三。 ——高博 青年计算机学会论坛(YOCSEF)会员,文津奖得主,《研究之美》译者 性能问题一直是个热门话题,分布式系统时代更成为摆在开发运维人员面前的巨大难题。本书采用了自下而上的结构,从底层的操作系统、CPU、磁盘等基础元素开始,到工作原理层面分析性能受到 的各种不同影响,以及如何评估、衡量各项性能指标,让读者知其所以然,在面对实际情况时能够更有针对性地做出判断和决定,而不是机械地、教条地行事。本书提供案例,手把手展示实际性能问题 的排查调优过程。读者可据此结合业务系统实际情况展开工作。本书还对常用性能分析工具的使用和扩展做了详细介绍,这对日常工作效率的提升有很大的帮助。无论开发还是运维人员,无论设计、编 码或排查调优,本书都能发挥重要的参考作用,尤其适合常备案头。 ——林应 淘宝技术部高级技术专家 书名:云落谁家?OpenStack基于场景的架构设计实践 内容简介: 本书总共有8 章的内容,将OpenStack 的应用场景分为了几类,每章介绍了不同的场景。第1 章介绍了通用型应用场景;第2~4 章分别介绍了计算密集型、高负载存储型、高吞吐网络型应用场景;第5 章介绍了混合云应用场景;第6 章介绍了跨地域多点型应用场景;第7 章介绍了大规模可扩展型应用场景;第8 章介绍了一些其他的应用场景。 本书是写给打算架构设计OpenStack 基础设施即服务云的 设计师和架构师们的,以及OpenStack 的咨询顾问、售前顾问。如果你正在考虑如何部署OpenStack,正在考虑如何选择OpenStack 组件、如何选择硬件基础设施、如何解决监控和计费的问题、如何进行 架构设计才具安全性等问题,那么你可以通过本书在各个类型的云架构场景中找到想要的答案。 目 录 第1章 通用型应用场景 1 1.1 场景描述 1 1.2 需求分析 2 1.3 技术架构设计 4 1.3.1 规划计算资源 5 1.3.2 规划网络资源 7 1.3.3 规划存储资源 9 1.3.4 软件选择 11 1.3.5 性能 14 1.3.6 可用性 17 1.3.7 安全性 18 1.4 运营服务设计 20 1.4.1 技术支持和维护 21 1.4.2 监控 21 1.4.3 宕机时间 21 1.4.4 容量规划 22 1.5 架构实体选型建议 23 1.5.1 选择存储硬件 26 1.5.2 选择网络硬件 29 1.5.3 软件选择 30 1.5.4 针对性能敏感的负载 34 1.6 典型案例实践 35 第2章 计算密集型应用场景 39 2.1 场景描述 39 2.2 需求分析 40 2.3 技术架构设计 41 2.3.1 扩展计划 43 2.3.2 CPU和内存 43 2.3.3 额外的硬件 45 2.3.4 量力而行 45 2.4 运营服务设计 48 2.4.1 支持和维护 49 2.4.2 监控 50 2.4.3 计划内和计划外服务器宕机时间 50 2.4.4 容量计划 50 2.5 架构实体选型建议 51 2.5.1 存储硬件选择 53 2.5.2 选择网络硬件 55 2.5.3 软件选择 56 2.6 典型案例实践 60 第3章 高负载存储型应用场景 65 3.1 场景描述 65 3.2 需求分析 66 3.3 技术架构设计 68 3.4 运营服务设计 69 3.4.1 管理效率 70 3.4.2 应用的可知性 71 3.4.3 容错和可用性 71 3.4.4 扩展存储服务 73 3.5 架构实体选型建议 75 3.5.1 计算(服务器)硬件选择 77 3.5.2 网络硬件选择 79 3.5.3 软件选择 79 3.6 典型案例实践 83 3.6.1 带数据处理服务的计算分析 85 3.6.2 带数据库服务的高性能数据库 86 第4章 高吞吐网络型应用场景 89 4.1 场景描述 89 4.2 需求分析 91 4.2.1 高可用问题 92 4.2.2 风险 93 4.2.3 安全性 94 4.3 技术架构设计 94 4.3.1 二层架构的局限性 96 4.3.2 三层架构的优势 97 4.3.3 三层架构的局限性 98 4.3.4 网络建议的总结 98 4.3.5 额外的考虑因素 99 4.4 运营服务设计 102 4.5 架构实体选型建议 104 4.5.1 对设计的影响 105 4.5.2 可调联网组件 108 4.6 典型案例实践 109 4.6.1 负载均衡 111 4.6.2 覆盖网络 111 4.6.3 性能调优 111 4.6.4 网络功能 112 4.6.5 云存储 113 第5章 混合云应用场景 115 5.1 场景描述 115 5.2 需求分析 116 5.2.1 法律需求 117 5.2.2 负载考虑 118 5.2.3 工具考量 119 5.2.4 网络考虑 120 5.2.5 风险规避和管理考虑 120 5.3 技术架构设计 121 5.3.1 容量计划 122 5.3.2 安全性 123 5.3.3 量力而行 123 5.3.4 性能 124 5.3.5 组件 125 5.3.6 特殊因素 125 5.4 运营服务设计 126 5.4.1 敏捷性 126 5.4.2 应用准备 127 5.4.3 升级 127 5.4.4 网络操作中心 127 5.4.5 可维护性 128 5.5 架构实体选型建议 128 5.5.1 镜像移植 129 5.5.2 上层服务 130 5.5.3 网络服务 131 5.5.4 数据 131 5.6 典型案例实践 132 5.6.1 突破到一个不是OpenStack的公有云 133 5.6.2 高可用/灾难恢复 134 第6章 跨地域多点型应用场景 137 6.1 场景描述 137 6.2 需求分析 138 6.2.1 负载特性 138 6.2.2 镜像和模板在跨不同站点时要保持一致性 139 6.2.3 高可用 139 6.2.4 应用准备 140 6.2.5 成本 140 6.2.6 站点失效和恢复 141 6.2.7 合规性和地理位置 141 6.2.8 审计 141 6.2.9 职责分工 142 6.2.10 站点之间的认证 142 6.3 技术架构设计 142 6.3.1 量力而行 144 6.3.2 性能 144 6.3.3 安全性 145 6.3.4 OpenStack组件 146 6.4 运营服务设计 146 6.4.1 许可 147 6.4.2 记录日志和监测 147 6.4.3 升级 148 6.4.4 配额管理 149 6.4.5 规则管理 149 6.4.6 文档 150 6.5 架构实体选型建议 150 6.5.1 OpenStack服务架构 151 6.5.2 存储 152 6.5.3 网络 152 6.5.4 依赖 153 6.6 典型案例实践 153 6.6.1 地理冗余负载均衡 155 6.6.2 本地服务 157 第7章 大规模可扩展型应用场景 159 7.1 场景描述 159 7.2 需求分析 160 7.2.1 用户需求 161 7.2.2 运营者的需求 162 7.3 技术架构设计 163 7.3.1 基础设施隔离 163 7.3.2 主机聚合 165 7.3.3 可用域 165 7.3.4 隔离的例子 166 7.4 运营服务设计 167 7.4.1 前沿 167 7.4.2 增长和容量计划 168 7.4.3 技能和培训 169 7.5 架构实体选型建议 169 7.5.1 选择存储硬件 171 7.5.2 选择网络硬件 173 7.5.3 软件选择 175 第8章 其他应用场景 179 8.1 多虚拟机管理器 180 8.2 虚拟桌面基础设施(VDI) 185 8.3 特殊网络应用示例 187 8.4 软件定义网络 188 8.5 OpenStack上的OpenStack 190 参考资料 193 名词解释 196 OpenStack社区介绍 200 后记 204  
架构的艺术:构筑未来数字世界的基石 在数字浪潮席卷全球的今天,从操作系统内核的精妙设计,到庞大企业的 IT 基础设施的搭建,再到云原生时代的架构演进,无一不围绕着“性能”这一核心诉求展开。本书《架构的艺术》正是这样一本深度剖析和系统阐述数字世界性能底层逻辑的著作,它将带领读者穿越技术的迷雾,洞悉构建高效、稳定、可扩展的系统、企业乃至云基础设施的奥秘。 本书并非一本枯燥的技术手册,而是一次对现代计算架构的一次深刻的哲学思考与实践探索。我们从最基础的层面出发,深入理解处理器如何执行指令,内存如何组织数据,操作系统如何调度资源,以及网络通信的效率瓶颈究竟在哪里。这些基础概念的清晰理解,是构建任何高性能系统的基石。我们将逐一揭示其中的精妙之处,例如 CPU 缓存的利用率如何影响程序执行速度,I/O 子系统设计中的延迟与吞吐量如何权衡,以及并发模型选择对系统伸缩性的决定性影响。 接着,本书将视野从单体系统拓展到复杂的企业级架构。在一个日益互联互通的世界里,企业往往需要构建分布式系统来满足业务需求,这其中涉及到大量的挑战。我们将详细探讨微服务架构的设计原则,如何拆分大型单体应用,以及服务间通信的模式选择(如 RESTful API, gRPC, 消息队列),并深入分析其性能影响。此外,一致性、可用性和分区容错性(CAP 定理)在分布式系统设计中的意义,以及如何通过各种分布式事务解决方案(如两阶段提交、三阶段提交、BASE 理论)来平衡这些矛盾,都将得到细致的讲解。状态管理、数据同步、容错机制、监控与可观测性,这些都是构建稳健企业级分布式系统的关键要素,本书将提供一套系统性的方法论来应对这些挑战。 当谈及企业级架构的演进,云原生技术无疑是当下最热门也是最重要的方向。本书将深入探讨容器化技术(如 Docker)带来的部署和管理效率的飞跃,以及 Kubernetes 这一事实上的容器编排标准如何实现大规模集群的管理、应用的自动化部署、伸缩和自愈。我们将剖析 Kubernetes 的核心组件,如 API Server, etcd, Controller Manager, Scheduler,以及 Pod, Service, Deployment, StatefulSet 等核心概念,并重点讲解其在性能优化方面的策略,例如资源限制与请求的设置、网络插件的选择、存储卷的管理策略等。 本书还将深入探讨云计算的本质,及其对性能带来的重塑。从 IaaS (Infrastructure as a Service) 到 PaaS (Platform as a Service) 再到 SaaS (Software as a Service),云计算的层层抽象如何释放企业和开发者的生产力。我们将剖析云环境下的网络通信,例如虚拟网络的设计、负载均衡的实现、CDN 的优化原理,以及云存储的性能特点。在弹性伸缩方面,如何根据业务负载动态调整计算资源,如何利用自动化运维工具实现高效的资源管理,都将是本书着重阐述的内容。 此外,本书还将触及云基础设施的底层技术,例如虚拟化技术(如 KVM, Xen)是如何实现资源隔离和高效利用的,以及软件定义网络(SDN)和软件定义存储(SDS)如何为云平台带来前所未有的灵活性和可编程性。这些底层技术的深入理解,有助于读者更全面地把握云计算的性能优势和潜在瓶颈。 本书不仅仅停留在理论层面,更强调“落地”与“实践”。我们将通过大量的案例分析,展示优秀架构设计在实际项目中的应用,并总结其中的经验教训。同时,本书也将引导读者掌握性能调优的常用方法和工具,例如性能分析工具的使用、日志分析、链路追踪、压测与基准测试的实施,以及如何从数据中发现性能瓶颈并采取有效的改进措施。 本书的读者群广泛,涵盖了软件工程师、系统架构师、运维工程师、技术经理,以及对现代计算技术和企业数字化转型感兴趣的各界人士。无论您是希望提升现有系统的性能,还是正在规划构建全新的云原生应用,本书都将为您提供宝贵的见解和实用的指导。 《架构的艺术》是一次对数字世界性能真相的探索之旅。通过阅读本书,您将: 深入理解计算机系统的核心原理: 从硬件到操作系统的性能奥秘,构建坚实的理论基础。 掌握构建可伸缩、高可用的企业级分布式系统的设计模式: 应对微服务、大数据等复杂场景的挑战。 精通云原生技术的关键要素: 掌握容器化、Kubernetes 等技术,赋能现代化应用开发与部署。 洞悉云计算的性能优势与实现机制: 理解云基础设施如何为业务提供强大的支撑。 学会运用科学的方法进行性能分析与调优: 发现瓶颈,提升系统效率,降低运营成本。 培养面向未来的架构思维: 应对不断变化的业务需求和技术趋势。 在这个数据爆炸、计算能力指数级增长的时代,对性能的追求永无止境。本书将为您提供一套完整的知识体系和实践框架,帮助您在数字世界的洪流中,构筑起一座座高性能、可信赖的数字堡垒。它将引领您从“如何做”走向“为何如此”,从“使用技术”走向“创造技术”,最终掌握架构的艺术,构筑未来数字世界的坚实基石。

用户评价

评分

我一直对那些能够提供“系统级”思考的书籍情有独钟,因为很多时候,我们遇到的性能问题并非仅仅是某个孤立的环节出了差错,而是整个系统在协同工作时产生的连锁反应。这本书的“洞悉系统”这一点让我觉得非常契合我的需求。我希望它能帮助我理解,从操作系统内核到网络协议栈,再到应用层的性能瓶颈,是如何相互影响的。尤其是在云计算的环境下,这种系统层面的理解变得更加重要,因为我们不仅要关注自己应用的代码,还要理解底层基础设施的运作机制。这本书能否深入剖析CPU、内存、磁盘I/O、网络带宽等硬性资源的优化策略?能否讲解如何通过监控和日志分析来定位性能瓶颈?我期待它能提供一套系统性的方法论,帮助我建立起一种“全局观”,从而更有效地解决复杂系统中的性能难题。

评分

对于“云计算”这个话题,我总有一种想要刨根问底的冲动。市面上的书很多都在讲如何使用某个云平台,如何部署某个服务,但真正能让我理解“云”的本质,以及它是如何构建起来的书籍却少之又少。这本书的“洞悉系统、企业与云计算”这个组合,让我觉得它有潜力提供一个更加宏观和深入的视角。我希望它能解释云计算的底层架构,例如虚拟化技术、分布式存储、弹性计算、自动化运维等是如何协同工作的。同时,我也希望它能探讨不同类型的云计算服务(IaaS, PaaS, SaaS)的优劣,以及它们在企业中扮演的角色。尤其是在“云落谁家?OpenStack基”这个副标题的引导下,我期待这本书能在我对OpenStack的理解上,提供更深层次的洞察,不仅仅是API的调用,而是它背后所代表的开放、灵活和可定制的云计算理念。

评分

在现代企业数字化转型的浪潮中,云计算已经不再是可选项,而是必选项。然而,如何将云计算真正有效地融入企业的业务战略,实现价值的最大化,却是一个巨大的挑战。这本书的“洞悉企业”这一点,让我对其充满了期待。我希望它能够不仅仅局限于技术层面,更能深入探讨云计算在企业运营中的作用,例如如何利用云计算来提升业务敏捷性、降低IT成本、增强数据安全性和合规性,以及如何构建一个支撑企业创新和增长的云原生架构。我特别关注那些关于企业级云计算转型的最佳实践,以及在转型过程中可能遇到的组织架构调整、人才培养、文化变革等非技术因素。如果这本书能够提供一些关于如何评估不同云解决方案的ROI(投资回报率),以及如何制定长期的企业云计算战略的指导,那将非常有价值。

评分

“云落谁家?OpenStack基”这个副标题一下子就抓住了我的眼球,它暗示了这本书不仅仅是泛泛地谈论云计算,而是深入到了某个具体的、并且极具影响力的开源云计算平台——OpenStack。我一直对OpenStack的架构、它的发展历程以及在不同企业中的实际应用案例非常感兴趣。这本书能否为我提供一个清晰的OpenStack全景图?它会深入讲解OpenStack的核心组件,比如Nova、Neutron、Cinder、Keystone等等,以及它们之间的交互逻辑吗?我更期待的是,这本书能超越简单的概念介绍,去探讨OpenStack在实际落地过程中可能遇到的挑战,例如多租户隔离、资源调度、网络配置的复杂性、安全性的考量,甚至是与Kubernetes等容器编排技术的融合。如果这本书能提供一些关于如何优化OpenStack性能的实践建议,或者分享一些成功部署OpenStack的案例研究,那将极大地增强我的信心,让我对构建和管理私有云或混合云环境有一个更清晰的认识。

评分

这本书的名字听起来就相当有分量,我拿到手上的时候,就对它所承诺的“性能之巅”充满了好奇。尤其是在看到“洞悉系统、企业与云计算”这些关键词时,我更加期待这本书能为我揭示那些隐藏在技术表面之下的深刻洞察。市面上关于云计算的书籍层出不穷,但真正能触及系统层面优化、企业级应用落地以及整体云计算架构的深度解析,却并不多见。我尤其关注那些能够帮助我理解不同技术栈之间如何协同工作,以及在实际部署中可能遇到的各种性能瓶颈和解决方案。这本书如果能做到这一点,那么它绝对是一部值得反复研读的宝藏。我对它在如何处理大规模分布式系统下的性能调优,如何评估和选择适合不同业务场景的云服务,以及如何构建一个高效、可靠的企业级云计算平台等方面的内容抱有很高的期望。希望它能提供一些我之前从未接触过的、富有启发性的视角和实用的方法论,从而真正帮助我提升在云计算领域的专业能力。

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有