微服务实战(英)摩根·布鲁斯,(英)保罗·A.佩雷拉pdf下载

微服务实战(英)摩根·布鲁斯,(英)保罗·A.佩雷拉百度网盘pdf下载

作者:
简介:微服务实战(英)摩根·布鲁斯,(英)保罗·A.佩雷拉
出版社:
出版时间:2020-05
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

作  者:[英]摩根·布鲁斯(Morgan 著 李哲 译
定  价:89
出 版 社:人民邮电出版社
出版日期:2020年05月01日
页  数:318
装  帧:平装
ISBN:9787115529879
·本书涵盖微服务设计到部署的各个阶段,贯穿全书的真实案例,实战性较强。·本书作者技术背景深厚,均在英国有名身份识别与认证公司Onfido担任技术方向的负责人。该公司用机器学习主要从事图像识别、面部识别等技术的开发。·源自作者日常开发中得到的积累和感悟,带给你真实的沉浸式体验。·示例代码基于Python语言,可在异步社区轻松下载。
部分  概述第  1章 微服务的设计与运行  31.1  什么是微服务应用  41.1.1  通过分解来实现扩展  61.1.2  核心原则  71.1.3  谁在使用微服务  91.1.4  为什么微服务是一个明智的选择  101.2  微服务的挑战  121.2.1  设计挑战  131.2.2  运维挑战  151.3  微服务开发生命周期  161.3.1  微服务设计  171.3.2  微服务部署  181.3.3  服务监控  211.4  有责任感和运维意识的工程师文化  221.5  小结  23第  2章 SimpleBank公司的微服务  242.1  SimpleBank公司的业务范围  242.2  微服务是否是正确的选择  252.2.1  金融软件的风险和惰性  262.2.2  减少阻力和持续交付价值  272.3  开发新功能  272.3.1  通过领域建模识别微服务  282.3.2  服务协作  302.3.3  服务编排  322.4  向外界开放服务  342.5  将功能发布到生产环境中  352.5.1  高质量的自动化部署  372.5.2  可恢复性  372.5.3  透明性  382.6  大规模微服务开发  392.6.1  技术分歧  402.6.2  孤立  402.7  接下来的内容  412.8  小结  41第二部分  设计第3章  微服务应用的架构  453.1  整体架构  453.1.1  从单体应用到微服务  463.1.2  架构师的角色  473.1.3  架构准则  473.1.4  微服务应用的4层架构  483.2  微服务平台  493.3  服务层  513.3.1  功能  513.3.2  聚合与多元服务  523.3.3  关键路径和非关键路径  533.4  通信  543.4.1  何时使用同步消息  543.4.2  何时使用异步消息  553.4.3  异步通信模式  553.4.4  服务定位  573.5  服务边界  583.5.1  API网关  603.5.2  服务于前端的后端  613.5.3  消费者驱动网关  623.6  客户端  633.6.1  前端单体  633.6.2  微前端  3.7  小结  65第4章  新功能设计  6.1  SimpleBank的新功能  674.2  按业务能力划分  684.2.1  能力和领域建模  694.2.2  创建投资策略  704.2.3  内嵌型上下文和服务  754.2.4  挑战和不足  7.3  按用例划分  774.3.1  按投资策略下单  774.3.2  动作和存储  824.3.3  编配与编排  834.4  按易变性划分  844.5  按技术能力划分  854.5.1  发送通知  854.5.2  何时使用技术能力  8.6  处理不确定性  874.6.1  从粗粒度服务开始  884.6.2  准备进一步分解  884.6.3  下线和迁移  894.7  组织中的服务所有权  914.8  小结  92第5章  微服务的事务与查询  935.1  分布式应用的事务一致性  945.2  基于事件的通信  965.3  Saga  985.3.1  编排型Saga  1005.3.2  编配型Saga  1025.3.3  交织型Saga  1045.3.4  一致性模式  1055.3.5  事件溯源  1065.4  分布式世界中的查询操作  1075.4.1  保存数据副本  1085.4.2  查询和命令分离  1105.4.3  CQRS挑战  1125.4.4  分析和报表  1145.5  延伸阅读  1145.6  小结  114第6章  设计高可靠服务  1166.1  可靠性定义  1176.2  哪些会出错  1196.2.1  故障源  1196.2.2  连锁故障  1226.3  设计可靠的通信方案  1256.3.1  重试  1266.3.2  后备方案  1286.3.3  超时  1306.3.4  断路器  1326.3.5  异步通信  1346.4  大限度地提高服务可靠性  1356.4.1  负载均衡与服务健康  1356.4.2  限流  1366.4.3  验证可靠性和容错性  1376.5  默认安全  1406.5.1  框架  1406.5.2  服务网格  1416.6  小结  142第7章  构建可复用的微服务框架  1437.1  微服务底座  1447.2  微服务底座的目的  1467.2.1  降低风险  1477.2.2  快速启动  1477.3  设计服务底座  1487.3.1  服务发现  1497.3.2  可观测性  1537.3.3  平衡和限流  1597.4  探索使用底座实现的特性  1617.5  差异性是否是微服务的承诺  1637.6  小结  1第三部分  部署第8章  微服务部署  1678.1  部署的重要性  1678.2  微服务生产环境  1698.2.1  微服务生产环境的特点  1698.2.2  自动化和速度  1708.3  部署服务的快捷方式  1718.3.1  服务启动  1718.3.2  配置虚拟机  1728.3.3  运行多个服务实例  1738.3.4  添加负载均衡器  1758.3.5  开发者学到了什么  1778.4  构建服务工件  1788.4.1  工件的组成  1798.4.2  不可变性  1798.4.3  服务工件的类型  1808.4.4  配置  1848.5  服务与主机关系模型  1858.5.1  单服务主机  1858.5.2  单主机多静态服务  1858.5.3  单主机多调度化服务  1868.6  不停机部署服务  1878.7  小结  190第9章  基于容器和调度器的部署  1919.1  服务容器化  1929.1.1  镜像使用  1929.1.2  构建镜像  1949.1.3  运行容器  1979.1.4  镜像存储  1999.2  集群部署  2009.2.1  pod的设计与运行  2019.2.2  负载均衡  2049.2.3  快速揭秘  2059.2.4  健康检查  2089.2.5  部署新版本服务  2109.2.6  回滚  2159.2.7  连接多个服务  2159.3  小结  216第  10章 构建微服务交付流水线  21710.1  让部署变得平淡  21710.2  使用Jenkins构建流水线  21910.2.1  构建流水线配置  22010.2.2  构建镜像  22310.2.3  运行测试  22410.2.4  发布工件  22610.2.5  部署至预发布环境  22710.2.6  预发布环境  23010.2.7  部署生产环境  23010.3  构建可复用的流水线步骤  23310.4  降低部署影响以及实现功能发布的技术  23510.4.1  暗发布  23510.4.2  功能标记  23610.5  小结  237第四部分  可观测性和所有权第  11章 构建监控系统  24111.1  稳固的监控技术栈  24111.1.1  良好的分层监控  24311.1.2  黄金标志  24411.1.3  度量指标的类型  24411.1.4  实践建议  24511.2  利用Prometheus和Grafana监控SimpleBank  24611.2.1  配置度量指标收集基础  设施  24711.2.2  收集基础设施度量  指标——RabbitMQ  25311.2.3  监控下单功能  25511.2.4  告警设置  25711.3  生成合理的可执行的告警  26111.3.1  系统出错时哪些人需要  知悉  26111.3.2  症状,而非原因  26211.4  监测整个应用  26211.5  小结  2第  12章 使用日志和链路追踪了解系统  行为  26512.1  了解服务间的行为  26512.2  生成一致的、结构化的、人类可读的  日志  26812.2.1  日志中的有用信息  26812.2.2  结构化和可读性  26912.3  为SimpleBank配置日志基础设施  27112.3.1  基于ELK和Fluentd的解决  方案  27212.3.2  配置日志解决方案  27412.3.3  配置应收集哪些日志  27612.3.4  大海捞针  27912.3.5  记录合适的信息  28112.4  服务间的跟踪交互  28112.4.1  请求关联:trace和span  28212.4.2  在服务内配置链路追踪  28312.5  链路追踪可视化  28712.6  小结  291第  13章 微服务团队建设  29213.1  建设高效团队  29213.1.1  康威定律  29413.1.2  高效团队原则  29413.2  团队模型  29613.2.1  按职能分组  29613.2.2  跨职能分组  29813.2.3  设置团队边界  29913.2.4  基础设施、平台和产品  30013.2.5  谁负责值班  30213.2.6  知识共享  30313.3  微服务团队的实践建议  30413.3.1  微服务变更的驱动力  30513.3.2  架构的角色  30513.3.3  同质性与技术灵活性  30713.3.4  开源模型  30713.3.5  设计评审  30813.3.6  动态文档  30913.3.7  回答应用的问题  31013.4  延伸阅读  31113.5  小结  311附录A  在Minikube上安装Jenkins  312

内容简介

《微服务实战》主要介绍如何开发和维护基于微服务的应用。本书源自作者从日常开发中得到的积累和感悟,其中给出的案例覆盖从微服务设计到部署的各个阶段,能够带给你真实的沉浸式体验。通过阅读本书,你不仅能够了解用微服务搭建高效的持续交付流水线的方法,还能够运用Kubernetes、Docker 以及Google Container Engine 进一步探索书中的示例。
[英]摩根·布鲁斯(Morgan 著 李哲 译
摩根·布鲁斯 (Morgan Bruce)和保罗·A. 佩雷拉 (Paulo A. Pereira)都是经验丰富的开发团队,他们的主要工作是运用本书中介绍的技术将微服务应用到生产环境中。