热门搜索: 中考 高考 考试 开卷17
服务电话 024-23945002/96192
 

分布式系统性能优化:方法与实践

编号:
wx1204041515
销售价:
¥95.92
(市场价: ¥109.00)
赠送积分:
96
数量:
   
商品介绍

(1)作者背景资深,经验沉淀深厚:本书由拥有近30年软硬件研发经验的全栈技术专家曹洪伟领衔,作者团队拥有在世界500强企业、大型互联网公司和前沿AI领域的丰富经验。
(2)知识系统全面,告别“救火式”优化:系统阐述分布式系统的性能优化方法论,以“多(容量)、快(时间)、好(可用)、省(资源)”的4维性能指标体系为核心,帮助读者从根本上建立完整的性能优化知识体系,将性能优化从“临阵磨枪”转变为“体系化建设”。
(3)内容结构完整,学习路径清晰:全书分为“基础理论”、“优化方法”和“实战应用”三大核心部分。结构安排由浅入深,循序渐进,覆盖了从性能评估、架构设计到具体调优策略的完整链路,便于读者系统学习和快速掌握。
(4)实战案例丰富,工程落地性强:本书强调“理论结合实践”,在讲解每种优化方法时均配有典型实战案例,共20余个工业级案例,帮助读者将抽象原理转化为可操作的工程能力。
(5)覆盖核心技术栈,解决关键痛点:内容全面覆盖分布式系统性能优化的6大核心领域:系统架构、网络基础设施、通信协议、分布式缓存、分布式事务和分布式锁。针对性地提供了5种缓存策略、3种分布式事务解决方案、10种微服务设计模式等,直击高并发、数据一致性等技术难点。
(6)紧跟技术前沿,拥抱AI与自动驾驶:本书不仅关注传统分布式系统优化,更深入探讨了AI与大模型、自动驾驶系统等前沿场景的性能优化方法。包括RAG系统、Agent系统、语义缓存等基于大模型应用的优化,以及自动驾驶中的异构计算和分布式训练优化,帮助读者抢占技术高地。
(7)专家联袂推荐,价值高度认可:本书获得了新浪微博高级总监、前阅文集团首席架构师、京东零售技术专家等多位来自一线大厂的资深架构师和技术专家的联袂推荐,一致认可本书是分布式系统优化领域的“秘籍”和“实战宝典”。
(8)行文简洁严谨,阅读体验友好:语言表达清晰明了,避免冗余术语,注重对原理与概念的透彻阐释。逻辑连贯,既适合初学者建立系统认知,也对中高级开发者在架构设计、瓶颈分析与性能调优方面具有直接参考意义。

内容简介
这是一本系统化解决分布式系统性能瓶颈的实战指南,它以“多、快、好、省”的性能指标体系为核心,提供了从架构设计、网络通信、缓存、事务到AI大模型应用的全链路、360°的性能优化方法论与工程实践。
性能优化不是亡羊补牢,而是磨出来的工程艺术。本书正是一本帮助你将性能优化从“救火”转变为“体系化建设”的实战宝典。全书共12章,分为三大核心部分(基础理论、优化方法、实战应用),通过20余个工业级实战案例,为你提供了从理论到实践的完整性能优化知识图谱。
掌握本书内容,你将收获以下7大核心价值:
(1)构建完整的性能指标体系:掌握分布式系统“多(容量)、快(时间)、好(可用)、省(资源)”的4维性能指标体系,并学会通过全链路压测、可观测性等手段,精准定位系统性能瓶颈。
(2)掌握系统架构优化策略:深入理解单体、微服务、事件驱动等5种主流架构对性能的影响,并掌握API网关、Saga、断路器等10种微服务设计模式,实现面向性能的架构选型与优化。
(3)突破网络传输瓶颈:学习网络拓扑优化、带宽管理、高效路由、CDN与边缘计算等4大基础设施提速技巧,并通过基于BFE的大规模负载均衡实践,将网络延迟降低到极 致。
(4)精通缓存与通信调优:掌握Cache-Aside、Write-Through等5种分布式缓存策略,以及热Key、缓存穿透、缓存雪崩等6大常见问题的解决方案;同时学会HTTP优化、gRPC、异步通信和消息队列等4大通信调优技巧。
(5)解决数据一致性难题:深入理解本地事务、全局事务、分布式事务等3种事务类型,并掌握事务消息、TCC等3种分布式事务解决方案,确保数据在分布式环境下的强一致性。
(6)应对高并发挑战:学习如何合理设计分布式锁,掌握Redis和ZooKeeper分布式锁的互斥性、防死锁、高性能、可重入性等4大核心要素,并通过直播排行榜等案例,解决高并发下的资源竞争问题。
(7)拥抱前沿技术优化:掌握在线聊天、高并发直播系统、自动驾驶异构计算等3个大型应用系统的性能调优实战,并深入探讨RAG、Agent系统、语义缓存等3大基于大模型应用的系统优化方法,抢占AI时代的性能高地。

张程,资深分布式系统技术专家,拥有10余年技术研发与团队管理经验。在分布式系统领域具备深厚技术积累,核心专长涵盖微服务架构、高效通信交互、系统高可用与数据容错设计,并拥有丰富的AWS云平台实战经验。同时,在大数据处理与云计算相关技术栈方面也具备扎实的工程实践。<br />曾任职于家辉培优线上教学部,主导直播生态链路的整体架构设计,推动OMO模式一体化教育模式的落地。现就职于NTT公司,担任技术经理与架构师,专注于分布式系统架构设计及性能优化。积极参与行业技术分享,曾受邀在CSDN线下沙龙、行知数字峰会等活动中发表演讲,分享分布式系统架构与性能优化的实践经验,并著有《分布式系统架构:技术栈详解与快速进阶》一书。<br />王梓晨,现就职于京东物流,担任X科技部无人车高级研发总监,从0到1打造精益团队,落地了一系列行业尖端产品。多次被评为多种知名技术峰会明星讲师;多次获得中国物流与采购联合会科学技术奖、中国汽车工程学会科学技术奖,并担任中国交通运输协会物流技术装备专业委员会特聘专家、中国卫星导航定位协会北斗标准化工作委员会委员、中国快递协会智能配送专业委员会委员。<br />曹洪伟,精通软硬件技术的全栈技术专家,有近30年研发经验,目前担任某AI公司首席架构师,致力于企业应用的AI赋能。擅长软件系统的架构设计、性能工程及AIoT。曾就职于北方电讯、斯伦贝谢、高通等世界500强企业;也曾作为CTO/联合创始人参与多次创业,其中渡鸦科技被百度收购后,发布了第一款小度音箱。拥有50余项国内外专利,中国专利局外聘专家,腾讯云TVP。<br />著有《MCP极简入门》《性能之道》《一书读懂物联网》《深入分布式缓存》等著作,译著有《架构现代化》《持续架构实践》《软件架构设计》《算法工程珠玑》《基于混合方法的自然语音处理》等10余本。平时维护CSDN博客及公众号“wireless_com”。

目  录 Contents<br /><br />前 言<br /><br />第一部分 基础理论<br /><br />第1章 分布式系统及其性能评估 2<br /><br />1.1 了解分布式系统 3<br /><br />1.1.1 分布式系统的定义 3<br /><br />1.1.2 分布式系统涉及的基本概念 3<br /><br />1.1.3 分布式系统的谬误 5<br /><br />1.1.4 数据一致性与CAP理论 5<br /><br />1.2 分布式系统的质量属性 8<br /><br />1.3 分布式系统的性能指标体系 9<br /><br />1.3.1 多—容量 9<br /><br />1.3.2 快—时间 10<br /><br />1.3.3 好—可用 10<br /><br />1.3.4 省—资源 11<br /><br />1.4 分布式系统的性能评估体系 12<br /><br />1.4.1 可观测性 13<br /><br />1.4.2 性能监控 14<br /><br />1.4.3 面向性能指标的压力测试 16<br /><br />1.5 示例:某银行系统的全链路压测 17<br /><br />1.6 本章小结 20<br /><br />第2章 分布式系统性能优化方法 21<br /><br />2.1 性能优化的策略 21<br /><br />2.1.1  面向单节点或部分节点集合的<br />局部优化策略 22<br /><br />2.1.2  面向分布式系统的全局最优<br />策略 23<br /><br />2.2 性能优化的系统方法 23<br /><br />2.2.1 了解前提与环境 24<br /><br />2.2.2 确定优化策略 25<br /><br />2.2.3 系统架构 25<br /><br />2.2.4 网络基础设施 25<br /><br />2.2.5 分布式存储 26<br /><br />2.2.6 通信 26<br /><br />2.2.7 数据库 28<br /><br />2.2.8  数据一致性约束:分布式<br />事务 29<br /><br />2.2.9 分布式锁 29<br /><br />2.2.10 分布式缓存 30<br /><br />2.2.11  分布式系统优化的一般思考<br />方向 31<br /><br /><br /><br />2.3 性能设计中需要注意的问题—<br />反模式 32<br /><br />2.3.1 项目结束时修复 33<br /><br />2.3.2 测量和比较不当 33<br /><br />2.3.3 算法恐惧 33<br /><br />2.3.4 递归泛滥 34<br /><br />2.3.5 过早进行低级优化 34<br /><br />2.3.6 仅关注问题表象 34<br /><br />2.3.7 线程数量过多 34<br /><br />2.3.8 非对称利用硬件 35<br /><br />2.3.9 无须交换缓存 35<br /><br />2.3.10 忽略常见情况 36<br /><br />2.4 示例:面向平均响应时间的优化 36<br /><br />2.5 本章小结 37<br /><br />第二部分 优化方法<br /><br />第3章  全局时空约束:系统架构<br />优化 40<br /><br />3.1 常见的系统架构类型 40<br /><br />3.1.1 单体架构 41<br /><br />3.1.2 事件驱动架构 41<br /><br />3.1.3 面向服务的架构 41<br /><br />3.1.4 无服务器架构 41<br /><br />3.1.5 微服务架构 42<br /><br />3.2 微服务架构的设计模式 43<br /><br />3.2.1 服务注册模式 44<br /><br />3.2.2 API网关模式 44<br /><br />3.2.3 聚合架构模式 45<br /><br />3.2.4 事件源架构模式 46<br /><br />3.2.5 独享数据库模式 47<br /><br />3.2.6 命令查询责任分离模式 48<br /><br />3.2.7 Saga模式 49<br /><br />3.2.8 断路器模式 49<br /><br />3.2.9 舱壁模式 50<br /><br />3.2.10 绞杀榕模式 51<br /><br />3.3 面向性能的混合云服务架构优化 52<br /><br />3.3.1  混合云服务架构的一般实现<br />步骤 52<br /><br />3.3.2 混合云服务架构的部署模式 52<br /><br />3.3.3 混合云服务架构的优化方法 57<br /><br />3.4 面向数据架构的分布式计算优化 58<br /><br />3.5 示例:跨境电商的云服务架构<br />优化 60<br /><br />3.6 本章小结 63<br /><br />第4章 基础设施提速:网络优化 64<br /><br />4.1 网络拓扑优化 64<br /><br />4.1.1 网络拓扑的类型 65<br /><br />4.1.2 网络拓扑的优化工具 66<br /><br />4.1.3 网络拓扑的类型选择与优化 67<br /><br />4.2 带宽管理 68<br /><br />4.3 高效路由 70<br /><br />4.4 CDN与边缘计算 71<br /><br />4.4.1 基于CDN的客户端渲染 71<br /><br />4.4.2 基于CDN的服务端渲染 72<br /><br />4.4.3 基于CDN的边缘渲染 72<br /><br />4.5 负载均衡 77<br /><br />4.5.1 负载均衡的分类 77<br /><br />4.5.2 软件负载均衡的常见类型 78<br /><br />4.5.3 负载均衡算法 80<br /><br /><br /><br />4.5.4 通过负载均衡提升系统性能 81<br /><br />4.6 示例:基于BFE的大规模负载<br />均衡优化实践 81<br /><br />4.7 本章小结 85<br /><br />第5章 流量传输技巧:通信调优 86<br /><br />5.1 通信协议的优化 87<br /><br />5.1.1 HTTP优化 87<br /><br />5.1.2 从REST到gRPC 89<br /><br />5.2 请求优化与数据压缩 92<br /><br />5.2.1 CSS和JavaScript优化 92<br /><br />5.2.2 图像优化 93<br /><br />5.2.3 字体优化 93<br /><br />5.2.4 HTTP通信中的“节流” 94<br /><br />5.3 连接池与复用 94<br /><br />5.3.1 数据库连接池的定义 94<br /><br />5.3.2 数据库连接池的常用方式 95<br /><br />5.3.3 数据库连接池的性能 96<br /><br />5.3.4 常见的数据库连接池 96<br /><br />5.4 异步通信 97<br /><br />5.4.1 异步与同步的通信流程 97<br /><br />5.4.2 Java中的异步通信 98<br /><br />5.5 消息队列 104<br /><br />5.5.1 消息队列的消息处理方式 104<br /><br />5.5.2 使用消息队列的主要收益 115<br /><br />5.6 示例:在Spring Boot微服务中<br />使用RabbitMQ 116<br /><br />5.6.1 RabbitMQ的组成 116<br /><br />5.6.2 RabbitMQ的基本工作原理 117<br /><br />5.6.3 RabbitMQ的应用示例 118<br /><br />5.6.4 RabbitMQ的一些最佳实践 123<br /><br />5.7 本章小结 124<br /><br />第6章  性能优化利器:分布式<br />缓存 125<br /><br />6.1 分布式缓存的应用场景 126<br /><br />6.1.1 页面缓存 126<br /><br />6.1.2 应用对象缓存 130<br /><br />6.1.3 会话状态缓存 137<br /><br />6.2 缓存的相关策略 138<br /><br />6.2.1 常用策略:Cache-Aside 139<br /><br />6.2.2 缓存和数据库一致性:<br />Read-Through 140<br /><br />6.2.3 写缓存为主并同步:<br />Write-Through 140<br /><br />6.2.4 数据库为主并同步:<br />Write-Around 140<br /><br />6.2.5 读写缓存为主并延迟同步:<br />Write-Back 141<br /><br />6.3 触发机制 141<br /><br />6.3.1 主动式触发 143<br /><br />6.3.2 被动式触发 144<br /><br />6.4 缓存的数据一致性 144<br /><br />6.4.1 更新策略 144<br /><br />6.4.2 解决方案 145<br /><br />6.5 如何提升命中率 148<br /><br />6.6 如何考虑缓存的可用性设计 150<br /><br />6.6.1 服务架构设计 150<br /><br />6.6.2 运维监控 153<br /><br />6.7 Redis调优 154<br /><br />6.8 示例:线上预约秒杀活动示例 154<br /><br />6.9 使用分布式缓存的一些常见问题 157<br /><br /><br /><br />6.9.1 热key问题 157<br /><br />6.9.2 缓存穿透问题 157<br /><br />6.9.3 缓存击穿问题 157<br /><br />6.9.4 缓存雪崩问题 158<br /><br />6.9.5 缓存雪崩后的备用方案 158<br /><br />6.9.6 高并发下数据库和缓存双写<br />数据不一致的问题 159<br /><br />6.9.7 高并发Redis缓存中的大值存<br />储,全量更新效率低的问题 159<br /><br />6.9.8 高并发Redis缓存的预热方案 159<br /><br />6.9.9 高并发Redis缓存的集中失效<br />问题 159<br /><br />6.9.10 Redis如何高效拆分数据 160<br /><br />6.10 本章小结 160<br /><br />第7章  数据一致性约束:分布式<br />事务 161<br /><br />7.1 事务的基本类型 162<br /><br />7.1.1 本地事务 162<br /><br />7.1.2 全局事务 164<br /><br />7.1.3 分布式事务 166<br /><br />7.2 分布式事务的应用场景 167<br /><br />7.3 分布式事务的技术难点 169<br /><br />7.3.1 网络问题 169<br /><br />7.3.2 消息重复发送 169<br /><br />7.3.3 CAP定理的选择 171<br /><br />7.4 分布式事务之消息:最大努力<br />通知 171<br /><br />7.4.1 最大努力通知的示例 173<br /><br />7.4.2 实现过程 175<br /><br />7.5 分布式事务之消息:消息发送<br />一致性 181<br /><br />7.5.1 消息发送一致性的示例 182<br /><br />7.5.2 实现过程 188<br /><br />7.6 分布式事务之消息:事务消息 191<br /><br />7.6.1 事务消息的示例 193<br /><br />7.6.2 实现过程 193<br /><br />7.7 分布式事务之TCC:三阶段事务<br />补偿 196<br /><br />7.7.1 事务补偿示例 198<br /><br />7.7.2 实现过程 199<br /><br />7.8 分布式事务的技术选型 206<br /><br />7.9 示例:电商下单过程中的事务<br />优化 206<br /><br />7.10 本章小结 208<br /><br />第8章 业务性能瓶颈:分布式锁 209<br /><br />8.1 高并发下如何选择锁 210<br /><br />8.2 如何合理设计分布式锁 212<br /><br />8.2.1 互斥性 212<br /><br />8.2.2 预防死锁 213<br /><br />8.2.3 高性能 213<br /><br />8.2.4 可重入性 214<br /><br />8.3 乐观锁应用 214<br /><br />8.4 Redis分布式锁应用 219<br /><br />8.4.1 Redis结合Lua脚本 220<br /><br />8.4.2 Redisson的使用 222<br /><br />8.5 ZooKeeper分布式锁应用 230<br /><br />8.5.1 节点及事件监听 230<br /><br />8.5.2 基于ZooKeeper的分布式锁的<br />实现 232<br /><br /><br /><br />8.6 高并发下的性能优化 238<br /><br />8.6.1 全局加锁 238<br /><br />8.6.2 锁的并发性能 239<br /><br />8.7 如何考虑可用性设计 240<br /><br />8.7.1 强一致性 240<br /><br />8.7.2 服务高可用 240<br /><br />8.7.3 锁释放及续租 241<br /><br />8.8 示例:直播排行榜 241<br /><br />8.9 本章小结 242<br /><br />第9章  I/O性能优化:分布式<br />存储 243<br /><br />9.1 分布式存储的应用场景 244<br /><br />9.1.1 大数据视频云 244<br /><br />9.1.2 大数据分析 245<br /><br />9.2 数据分布策略 248<br /><br />9.2.1 数据分片 248<br /><br />9.2.2 副本 250<br /><br />9.3 如何考虑数据一致性 251<br /><br />9.4 如何考虑容错性 254<br /><br />9.5 数据备份 257<br /><br />9.5.1 同步复制 259<br /><br />9.5.2 异步复制 260<br /><br />9.5.3 半同步复制 261<br /><br />9.6 示例:题库系统 261<br /><br />9.7 分布式存储中的常见问题 264<br /><br />9.7.1 分布式存储的类型及区别 264<br /><br />9.7.2  分布式共识算法的类型及<br />区别 264<br /><br />9.7.3 如何保证多副本数据一致性 265<br /><br />9.7.4  如何分散副本,避免全部<br />损坏 265<br /><br />9.7.5  被损坏副本和数据过期副本的<br />检测及处理 265<br /><br />9.8 本章小结 265<br /><br />第三部分 实战应用<br /><br />第10章  大型应用系统:在线聊天与直<br />播系统的性能调优 268<br /><br />10.1 示例:高并发在线聊天系统的性能<br />调优 269<br /><br />10.1.1 方案前期(交互细节) 271<br /><br />10.1.2 方案中期(集成) 273<br /><br />10.1.3 方案后期(性能调优) 297<br /><br />10.2 示例:高并发直播系统的性能<br />调优 300<br /><br />10.2.1 直播示例 302<br /><br />10.2.2 直播场景 305<br /><br />10.2.3 直播调优 308<br /><br />10.3 本章小结 314<br /><br />第11章  自动驾驶系统:分布式计算<br />的性能实战 315<br /><br />11.1 自动驾驶系统的性能挑战 315<br /><br />11.1.1  自动驾驶系统的核心架构与<br />模块 315<br /><br />11.1.2  自动驾驶系统性能优化的核心<br />目标 318<br /><br />11.2 通信中间件的性能优化 319<br /><br /><br /><br />11.2.1 通信中间件的核心功能 320<br /><br />11.2.2 性能瓶颈分析及优化 320<br /><br />11.3 通用计算的性能优化 324<br /><br />11.3.1  通用计算节点中的内存分配<br />与管理 324<br /><br />11.3.2  通用计算节点中的算力分配<br />与管理 331<br /><br />11.4 异构计算的性能优化 340<br /><br />11.4.1  异构计算节点中的CUDA<br />调度优化 341<br /><br />11.4.2  异构计算节点中的FPGA<br />计算加速 355<br /><br />11.5 分布式训练的性能优化 361<br /><br />11.5.1 数据并行优化 362<br /><br />11.5.2 模型并行优化 364<br /><br />11.5.3 分布式训练的挑战 365<br /><br />11.6 本章小结 366<br /><br />第12章  基于大模型应用的系统<br />优化 368<br /><br />12.1 关于大模型 369<br /><br />12.2 增强大模型能力的方法 369<br /><br />12.2.1 提示词工程 370<br /><br />12.2.2 微调 371<br /><br />12.2.3 强化学习 375<br /><br />12.2.4 预训练 377<br /><br />12.3  为大模型引入外部知识—RAG<br />系统及其优化 378<br /><br />12.3.1 查询变换 380<br /><br />12.3.2 查询路由 383<br /><br />12.3.3 分块及向量化 385<br /><br />12.3.4 搜索与索引 388<br /><br />12.3.5 重新排序和过滤 391<br /><br />12.4  为大模型引入外部动作—<br />Agent系统及其优化 392<br /><br />12.4.1  使用异步API将LLM应用<br />程序的速度提高70% 393<br /><br />12.4.2  用MLflow评价Agent系统的<br />响应 395<br /><br />12.4.3 与Instructor一起处理输出 396<br /><br />12.4.4  利用Presidio处理个人身份<br />信息 398<br /><br />12.4.5 防范提示词注入攻击 399<br /><br />12.5 语义缓存的应用 399<br /><br />12.5.1 缓存回顾 400<br /><br />12.5.2 语义缓存的工作原理 401<br /><br />12.5.3 语义缓存的实现 402<br /><br />12.5.4 约束与增强 405<br /><br />12.6 本章小结 406

商品参数
基本信息
出版社 机械工业出版社
ISBN 9787111794622
条码 9787111794622
编者 张程 王梓晨 曹洪伟 著
译者 --
出版年月 2025-12-01 00:00:00.0
开本 16开
装帧 平装
页数 406
字数 584
版次 1
印次 1
纸张
商品评论

暂无商品评论信息 [发表商品评论]

商品咨询

暂无商品咨询信息 [发表商品咨询]