• 混沌工程:通过可控故障实验提升软件系统可靠性
21年品牌 40万+商家 超1.5亿件商品

混沌工程:通过可控故障实验提升软件系统可靠性

全新正版 极速发货

72.03 5.6折 129 全新

库存12件

广东广州
认证卖家担保交易快速发货售后保障

作者[波]米科拉吉·帕利科夫斯基(Mikolaj Pawlikowski) 著

出版社机械工业出版社

ISBN9787111716624

出版时间2023-01

装帧平装

开本16开

定价129元

货号1202802085

上书时间2024-11-13

谢岳书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
目录
推荐序一推荐序二译者序序言一序言二前言致谢作者简介第1章  进入混沌工程的世界  11.1  什么是混沌工程  21.2  混沌工程的动机  31.2.1  评估风险和成本,并设定SLI、SLO和SLA  31.2.2  在整体上测试系统  41.2.3  找到“涌现性”特性  51.3  混沌工程的四个步骤  51.3.1  确保可观测性  71.3.2  定义稳态  81.3.3  形成假设  91.3.4  运行实验并证明(或反驳)你的假设  91.4  什么不是混沌工程  101.5  初识混沌工程  111.5.1  FizzBuzz即服务  111.5.2  漫漫长夜  111.5.3  后续  121.5.4  混沌工程简述  13总结  13第一部分  混沌工程基础第2章  来碗混沌与爆炸半径  172.1  设置使用本书中的代码  172.2  场景  182.3  Linux取证101  202.3.1  退出码  202.3.2  终止进程  212.3.3  内存溢出杀手  232.4  第一个混沌实验  252.4.1  确保可观测性  292.4.2  定义稳态  292.4.3  形成假设  302.4.4  运行实验  302.5  爆炸半径  312.6  深入挖掘  332.6.1  拯救世界  35总结  36第3章  可观测性  383.1  应用程序运行缓慢  393.2  USE方法  393.3  资源  413.3.1  系统概述  433.3.2  block I/O  443.3.3  网络  483.3.4  RAM  523.3.5  CPU  593.3.6  操作系统  653.4  应用程序  673.4.1  cProfile  683.4.2  BCC和Python  693.5  自动化:使用时序数据库  713.5.1  Prometheus和Grafana  713.6  延伸阅读  74总结  75第4章  数据库故障和生产环境中的测试  764.1  我们在做WordPress  764.2  弱点  784.2.1  实验1:磁盘慢了  794.2.2  实验2:网络慢了  834.3  在生产环境中测试  88总结  90第二部分  混沌工程实战第5章  剖析Docker  935.1  我的(Docker化的)应用程序运行缓慢  945.1.1  架构  945.2  Docker简史  955.2.1  仿真、模拟和虚拟化  955.2.2  VM和容器  975.3  Linux容器和Docker  995.4  Docker原理  1025.4.1  使用chroot变更进程的路径  1025.4.2  实现一个简单的容器(-ish)第1部分:使用chroot  1055.4.3  实验 1:一个容器可以阻止另一个容器写磁盘吗  1075.4.4  使用Linux命名空间隔离进程  1115.4.5  Docker和命名空间  1145.5  实验2:终止其他PID命名空间中的进程  1165.5.1  实现一个简单的容器(-ish)第2部分:命名空间  1185.5.2  使用cgroups进程的资源使用  1205.6  实验3:使用你能找到的所有CPU  1265.7  实验4:使用过多内存  1285.7.1  实现一个简单的容器(-ish)第 3 部分:cgroups  1305.8  Docker和网络  1335.8.1  capabilities和seccomp  1375.9  Docker揭秘  1405.10  修复我的(Docker化的)应用程序运行缓慢的问题  1415.10.1  启动Meower  1415.10.2  为什么应用程序运行缓慢  1435.11  实验5:使用Pumba让容器的网络变慢  1435.11.1  Pumba:Docker混沌工程工具  1435.11.2  运行混沌实验  1445.12  其他主题  1475.12.1  Docker daemon重启  1485.12.2  镜像layer的存储  1485.12.3  高级网络  1485.12.4  安全  149总结  149第6章  你要调用谁?系统调用破坏者  1506.1  场景:恭喜你升职了  1506.1.1  System X:如果大家都在用,但没人维护,是不是废弃软件  1516.2  简单回顾系统调用  1536.2.1  了解系统调用  1546.2.2  使用标准C库和glibc  1566.3  如何观测进程的系统调用  1586.3.1  strace和sleep  1586.3.2  strace和System X  1616.3.3  strace的问题:开销  1626.3.4  BPF  1636.3.5  其他选择  1666.4  为乐趣和收益阻塞系统调用第1部分:strace  1676.4.1  实验1:破坏close系统调用  1676.4.2  实验2:破坏write系统调用  1716.5  为乐趣和收益阻塞系统调用第2部分:seccomp  1736.5.1  seccomp 的简单方法:使用Docker  1736.5.2  seccomp 的困难方法:使用libseccomp  175总结  177第7章  JVM故障注入  1787.1  场景  1787.1.1  FizzBuzzEnterpriseEdition 介绍  1797.1.2  环顾FizzBuzzEnterprise-Edition  1797.2  混沌工程和Java  1807.2.1  实验的思路  1817.2.2  实验的计划  1827.2.3  JVM字节码简介  1837.2.4  实验的实现  1907.3  已有的工具  1967.3.1  Byteman  1967.3.2  Byte-Monkey  1987.3.3  Spring Boot的Chaos Monkey  2007.4  延伸阅读  200总结  201第8章  应用级故障注入  2028.1  场景  2028.1.1  实现细节:混沌之前  2048.2  实验1:Redis延迟  2088.2.1  实验1的计划  2098.2.2  实验1的稳态  2098.2.3  实验1的实现  2108.2.4  实验1的执行  2128.2.5  实验1的讨论  2138.3  实验2:失败的请求  2138.3.1  实验2的计划  2148.3.2  实验2的实现  2148.3.3  实验2的执行  2158.4  应用程序与基础设施  216总结  217第9章  我的浏览器中有一只“猴子”  2189.1  场景  2189.1.1  Pgweb  2199.1.2  Pgweb实现细节  2209.2  实验1:增加延迟  2229.2.1  实验1的计划  2239.2.2  实验1的稳态  2239.2.3  实验1的实现  2249.2.4  实验1的执行  2269.3  实验2:添加故障  2279.3.1  实验2的实现  2279.3.2  实验2的执行  2299.4  其他好知道的话题  2299.4.1  Fetch API  2299.4.2  Throttling  2309.4.3  工具:Greasemonkey和Tampermonkey  232总结  232第三部分  Kubernetes中的混沌工程第10章  Kubernetes中的混沌  23510.1  将东西移植到Kubernetes  23610.1.1  High-Profile 项目文档  23710.1.2  Goldpinger是什么  23710.2  Kubernetes是什么  23810.2.1  Kubernetes简史  23810.2.2  Kubernetes能为你做什么  23910.3  搭建Kubernetes集群  24110.3.1  使用Minikube  24110.3.2  启动一个集群  24110.4  测试运行在Kubernetes上的软件  24310.4.1  运行ICANT项目  24310.4.2  实验1:终止50%的Pod  25110.4.3  派对技巧:时尚地终止Pod  25610.4.4  实验2:引入网络缓慢  257总结  267第11章  自动化Kubernetes实验  26811.1  使用PowerfulSeal自动化混沌  26811.1.1  PowerfulSeal是什么  26911.1.2  安装PowerfulSeal  27011.1.3  实验1b:终止50%的Pod  27111.1.4  实验2b:引入网络缓慢  27311.2  持续测试和服务水准目标  27611.2.1  实验3:验证Pod在创建后几秒内是否准备就绪  27711.3  云层  28211.3.1  云提供商API、可用区  28211.3.2  实验4:关闭VM  284总结  286第12章  Kubernetes底层工作原理  28712.1  Kubernetes集群剖析以及如何破坏它  28712.1.1  控制平面  28812.1.2  Kubelet和pause容器  29512.1.3  Kubernetes、Docker以及容器运行时  29712.1.4  Kubernetes网络  30012.2  关键组件总结  304总结  304第13章  混沌工程与人  30513.1  混沌工程思维  30513.1.1  故障不是一种可能:它会发生  30613.1.2  早失败与晚失败  30713.2  获得支持  30813.2.1  经理  30813.2.2  团队成员  30913.2.3  游戏日  30913.3  将团队当成分布式系统  31013.3.1  查找知识单点故障:宅度假  31213.3.2  团队内部的错误信息和信任  31313.3.3  团队中的瓶颈:慢车道上的生活  31313.3.4  测试你的流程:内部工作  314总结  315附录附录A  安装混沌工程工具  318附录B  突击测验答案  325附录C  导演剪辑  333附录D  混沌工程食谱  337后记  343

内容摘要
混沌工程是一种有意的实验实践,旨在发现系统性问题。在本书中,我们将探讨为什么、何时以及如何应用混沌工程来改善你的计算机系统。你将学习通过一系列模拟真实故障的测试来运行应用程序和基础设施。通过学习像混沌工程师一样思考,以及学习设计适当的实验来确保软件的可靠性,你将掌握混沌工程的理论与技术,并将其应用于实际的系统中。

主编推荐
你的网络能否经受住毁灭性故障的考验?一场事故会让你的日常运营停止吗?混沌工程可以模拟基础设施中断、组件崩溃以及其他灾难,以展示系统和员工如何应对。用困境来测试系统是确保其未来弹性的*佳方式,这对于复杂、大规模、几乎没有停机空间的应用程序尤其重要。本书教你设计和执行可控的实验来发现隐藏的问题。通过本书可以学习如何注入系统故障来干扰系统调用、网络、API,以及基于Kubernetes的微服务基础设施。为方便读者练习,本书包含一个可下载的Linux VM镜像和一套预先配置的工具,以便你可以快速进行实验,并且没有任何风险。主要内容● 将故障注入进程、应用程序和虚拟机● 测试运行在Kubernetes上的软件● 使用开源软件和遗留软件● 模拟数据库连接延迟● 测试和改进团队的故障响应以上内容都基于Linux服务器,需要读者有基本的脚本技能。

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP