新書推薦:
《
以爱为名的支配
》
售價:HK$
64.4
《
台风天(大吴作品,每一种生活都有被看见的意义)
》
售價:HK$
55.2
《
打好你手里的牌(斯多葛主义+现代认知疗法,提升当代人的心理韧性!)
》
售價:HK$
66.1
《
新时代硬道理 广东寻路高质量发展
》
售價:HK$
79.4
《
6S精益管理实战(精装版)
》
售價:HK$
103.3
《
异域回声——晚近海外汉学之文史互动研究
》
售價:HK$
112.7
《
世界文明中的作物迁徙:聚焦亚洲、中东和南美洲被忽视的本土农业文明
》
售價:HK$
102.4
《
无端欢喜
》
售價:HK$
78.2
|
內容簡介: |
本书从实践出发,包括了作者参与并主导的3家电商互联网公司架构从0到1的构建经历,从多个角度讲解稳定、性能、效率、成本四大职责落地经验,并结合Mikey金字塔进行了部分创新,很多内容都可以直接复用于实际工作。本书分为7篇,分别是开端篇、监控篇、故障篇、容量篇、全局视角篇、性能篇和扩展篇。 本书适合互联网行业内的运维人员、SRE和DevOps工程师、架构师、技术团队负责人及关注用户体验的相关开发者阅读,也适合掌握了一定的SRE方法论但在实践中无从下手的读者阅读。
|
關於作者: |
王力,资深技术老兵,《Nginx实战:基于Lua语言的配置、开发与架构详解》和《高性能之道:SRE视角下的运维架构实践》作者。15年互联网从业经验,其中有9年电商互联网开发和运维经验,这期间担任过微拍堂运维专家、阿里技术专家、折800运维架构师等,并有5年主导电商大促活动保障的落地经验,推进过折800、微拍堂两家电商平台运维架构从0到1的建设,精通服务的稳定性建设,精通高并发场景下的性能优化和中间件开发,擅长通过架构设计来优化系统复杂度、降本增效。本书提供了一些补充内容(比如对软件安装、配置的讲解等),大家可以搜微信公众号“SRE基础架构”进行查阅。
|
目錄:
|
目 录开端篇 弱化边界感第1章 引言31.1 运维架构和SRE31.2 理解业务,技术为业务服务51.3 不设边界61.4 SRE金字塔61.5 总结7第2章 重视测试环境和预发布环境82.1 提效和维稳的道门槛——测试环境92.1.1 低级错误92.1.2 提效分析102.2 “守门员”——预发布环境112.2.1 低级错误112.2.2 提效分析122.3 两大环境问题根本原因溯源122.4 微拍堂测试环境治理思路介绍132.5 总结17监控篇 底层逻辑的艺术第3章 浅谈监控系统设计213.1 梳理监控体系213.2 梳理监控指标223.3 变更监控253.4 准实时系统监控253.5 短时进程追踪工具273.6 全链路监控273.7 商业监控平台的选用建议283.8 监控方式:白盒监控与黑盒监控293.9 从监控数据中总结规律303.10 黄金指标303.11 总结31第4章 云原生可观测性开源工具——Kindling324.1 行业现状324.2 Kindling解决方案——关联内核可观测性数据的Trace344.3 Kindling探针的架构设计理念374.4 Kindling探针架构384.4.1 内核态程序:drivers384.4.2 用户态C/C++程序:kindling-probe384.4.3 用户态Go程序:kindling-collector394.4.4 程序间通信方式404.5 在线Demo介绍414.6 案例分享424.6.1 安装434.6.2 功能介绍444.6.3 稳定性价值474.7 总结48第5章 高阶实战——打造可持续维护的闭环流程495.1 案例:动态观测SQL质量流程设计505.1.1 分析规范难以落地的原因505.1.2 监督与管控流程设计515.1.3 通知和统计575.2 案例:WebP格式图片的规范和落地实践575.2.1 规范无法持续推广575.2.2 成本和用户体验上的双赢585.2.3 计划实施605.2.4 管控机制605.2.5 采集数据信息和数据加工处理605.2.6 巡检平台之规范化监督615.3 案例:管道通信规范化实践625.3.1 我们每天都在使用管道625.3.2 管道示例场景及性能说明645.3.3 如何规范管道使用场景665.4 标准和规范治理平台675.4.1 现状685.4.2 设计思路685.5 总结72第6章 挖掘Nginx的监控价值736.1 URI指纹服务设计736.2 Nginx日志分析指南766.2.1 参数白名单766.2.2 URI的响应时间和HTTP状态监控776.2.3 URI响应字节数波动分析776.2.4 查询URL请求的项目796.2.5 注意HTTPS的透传806.2.6 利用Nginx完成动态全链路比例调整816.3 总结82故障篇 故障的生命周期第7章 事前治理的方法论857.1 从故障中总结经验857.2 从系统资源层面和日志中巡检异常867.3 从标准和规范中寻找闭环之路867.4 从业务中挖掘基础服务的使用问题877.5 技术风险防控运营成本877.6 总结88第8章 变更管控设计思路898.1 变更管控898.1.1 变更对象898.1.2 变更发布908.1.3 变更可灰度918.1.4 变更可回滚928.1.5 变更可监控928.1.6 配置项变更928.1.7 变更管控思路928.2 JumpServer使用的艺术及工单交互968.3 变更三板斧:运维团队的可监控、可灰度、可回滚实践988.3.1 案例:云服务器资源伸缩稳定性988.3.2 案例:CDN OpenResty的变更策略1028.4 总结106第9章 轮值的设计思路1079.1 值班模式探究1089.1.1 让开发人员参与其中1089.1.2 制定KPI1099.1.3 值班人员的边界探讨1109.2 值班机器人1119.3 提升值班价值——SRE需求池设计1129.3.1 结合日常巡检与非值班时间1129.3.2 在烦琐的工作中收集需求1129.4 总结113第10章 故障演练与应急预案11410.1 故障演练缘由11410.1.1 更好地面对系统规模增长带来的复杂性11510.1.2 提升故障的排查速度11510.1.3 验证应急预案的正确性11510.1.4 验证基础设施的稳定性11610.1.5 验证监控感知能力11610.1.6 验证应急流程的顺畅度11610.2 故障演练流程11610.2.1 故障演练场景关键要素11610.2.2 故障演练预期11710.3 应急预案11910.3.1 应急场景标准化12010.3.2 梳理应急预案清单12010.4 总结121第11章 应急响应流程实践12211.1 收拢故障上报来源12211.1.1 从技术体系内部发现12211.1.2 从技术体系外部发现12311.2 建立应急小组12311.2.1 人多力量弱12311.2.2 稳定性接口人和岗位权限12311.2.3 完善客诉标准化术语12411.3 故障噪点治理12411.3.1 报警治理12411.3.2 设计外部反馈阈值12511.3.3 收集第三方抖动事件12511.4 控制应急节奏12611.4.1 舍小保大12611.4.2 “优先止血”,后续定位根本原因12711.4.3 及时同步信息,减少信息差12711.5 应急“止血”的常见操作12711.5.1 代码回滚12711.5.2 重启12811.5.3 时序监控下的限流、熔断、扩容12911.5.4 业务降级13011.5.5 阻断慢查询13111.5.6 网络与运营商13111.5.7 重识监控13211.6 总结132第12章 静态容灾降级系统13312.1 荆棘之路13412.2 设计之路13612.3 架构流程图13812.3.1 反向代理系统13812.3.2 日志分析系统13812.3.3 后台系统——利用URI指纹服务13812.3.4 爬虫系统13912.3.5 容灾的缓存系统14012.3.6 基于时间的版本用途14012.3.7 异地容灾14112.4 核心代码解说14212.4.1 Ngx_Lua应用14212.4.2 爬虫和日志分析系统的关系14312.4.3 完全容灾和部分容灾功能14412.5 静态容灾的智能关闭方案14512.5.1 从日志分析系统复制请求14512.5.2 利用GoReplay复制流量14512.5.3 利用Nginx的mirror镜像功能14612.5.4 灰度验证容灾系统缓存——闭环设计14712.6 替换爬虫的新思路14812.7 总结148第13章 基于OpenResty的动态限流设计思路15013.1 常见反向代理限流方案缺点分析15013.2 动态限流设计思路15113.3 多维度限流15413.4 智能感知响应能力动态控速设计方案15713.5 屏蔽慢请求带来的服务阻塞15913.6 总结160第14章 故障复盘16114.1 复盘前16114.2 复盘中16114.3 复盘后16414.4 自省16414.5 跨部门分享16514.6 故障库16514.7 总结165容量篇 性能与成本间的平衡第15章 成本优化16915.1 成本优化事前准备16915.1.1 目标的制定和价值体现17015.1.2 IT成本与人力成本的权衡17015.1.3 提升对系统的理解17115.1.4 评估优化前后的数据统计及业务影响17115.1.5 从用户体验看待成本优化17315.1.6 梳理业务和资源的关系17315.2 公有云基础资源优化实践17415.2.1 成本管理白皮书17415.2.2 合理化资源使用率17715.2.3 自建产品和云产品的使用场景优化17815.2.4 基于业务场景的成本控制17915.3 总结180第16章 智能伸缩平台18116.1 弹性伸缩平台关键路径盘点18116.2 基础设施建设18216.2.1 基于Pod的HPA传统模式18216.2.2 基于Cluster-Autoscaler的Node伸缩18416.3 基于业务场景的实战18916.3.1 定时伸缩18916.3.2 基于预测的弹性伸缩19116.4 风险控制体系19916.4.1 动态限流触发规则19916.4.2 扩容节点失败和业务降级20016.5 总结200第17章 容量规划20117.1 容量规划现状20117.2 容量规划建设思路20217.2.1 建设核心20217.2.2 建设思路20317.3 应用系统容量规划说明20417.4 基于巡检模式的容量评估流程20517.4.1 对流量来源的梳理20517.4.2 对容量对象的梳理20617.4.3 收集日常关键性数据20717.5 对容量规划关注点的梳理21017.5.1 压力测试21017.5.2 业务放量21217.5.3 大促活动21317.5.4 秒杀业务21417.5.5 关注运营活动计划21417.5.6 尖刺限流21517.6 总结215第18章 编程能力21618.1 养成写伪代码的习惯21618.2 养成管理代码的习惯21718.3 编程能力分级21818.4 编程能力更深层的价值探讨21918.4.1 如何看待PHP短连接问题21918.4.2 理解Redis和Memcached在业务场景上的区别22018.4.3 进程、线程、协程在Linux系统中的表现22118.4.4 探究阻塞和非阻塞、异步和同步在系统中的表现22318.4.5 共享内存22418.4.6 尝试一些导致进程崩溃的操作22418.4.7 学习秒杀系统的业务架构22518.4.8 给自己的代码做闭环实践22618.4.9 参与业务开发日常22618.5 熟悉编程语言特性22618.6 通过系统分析倒推应用配置问题22718.6.1 通过access函数发现PHP性能问题22718.6.2 Java连接池失效22818.7 总结229全局视角篇 运维破圈第19章 开启测试视角23319.1 测试人员的职责边界23319.2 压力测试23419.2.1 压测黑名单思维
|
|