微服务设计 - (EPUB全文下载)
文件大小:2.46 mb。
文件格式:epub 格式。
书籍内容:
版权信息
书名:微服务设计
作者:[英] Sam Newman
译者:崔力强 张骏
ISBN:978-7-115-42026-8
本书由北京图灵文化发展有限公司发行数字版。版权所有,侵权必究。
您购买的图灵电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。
图灵社区会员 或许未必不过(185687308@qq.com) 专享 尊重版权
版权声明
O'Reilly Media, Inc. 介绍
业界评论
前言
谁该读这本书
为什么写这本书
当今的微服务
本书结构
排版约定
Safari® Books Online
联系我们
致谢
第 1 章 微服务
1.1 什么是微服务
1.1.1 很小,专注于做好一件事
1.1.2 自治性
1.2 主要好处
1.2.1 技术异构性
1.2.2 弹性
1.2.3 扩展
1.2.4 简化部署
1.2.5 与组织结构相匹配
1.2.6 可组合性
1.2.7 对可替代性的优化
1.3 面向服务的架构
1.4 其他分解技术
1.4.1 共享库
1.4.2 模块
1.5 没有银弹
1.6 小结
第 2 章 演化式架构师
2.1 不准确的比较
2.2 架构师的演化视角
2.3 分区
2.4 一个原则性的方法
2.4.1 战略目标
2.4.2 原则
2.4.3 实践
2.4.4 将原则和实践相结合
2.4.5 真实世界的例子
2.5 要求的标准
2.5.1 监控
2.5.2 接口
2.5.3 架构安全性
2.6 代码治理
2.6.1 范例
2.6.2 裁剪服务代码模板
2.7 技术债务
2.8 例外管理
2.9 集中治理和领导
2.10 建设团队
2.11 小结
第 3 章 如何建模服务
3.1 MusicCorp简介
3.2 什么样的服务是好服务
3.2.1 松耦合
3.2.2 高内聚
3.3 限界上下文
3.3.1 共享的隐藏模型
3.3.2 模块和服务
3.3.3 过早划分
3.4 业务功能
3.5 逐步划分上下文
3.6 关于业务概念的沟通
3.7 技术边界
3.8 小结
第 4 章 集成
4.1 寻找理想的集成技术
4.1.1 避免破坏性修改
4.1.2 保证API的技术无关性
4.1.3 使你的服务易于消费方使用
4.1.4 隐藏内部实现细节
4.2 为用户创建接口
4.3 共享数据库
4.4 同步与异步
4.5 编排与协同
4.6 远程过程调用
4.6.1 技术的耦合
4.6.2 本地调用和远程调用并不相同
4.6.3 脆弱性
4.6.4 RPC很糟糕吗
4.7 REST
4.7.1 REST和HTTP
4.7.2 超媒体作为程序状态的引擎
4.7.3 JSON、XML还是其他
4.7.4 留心过多的约定
4.7.5 基于HTTP的REST的缺点
4.8 实现基于事件的异步协作方式
4.8.1 技术选择
4.8.2 异步架构的复杂性
4.9 服务即状态机
4.10 响应式扩展
4.11 微服务世界中的DRY和代码重用的危险
客户端库
4.12 按引用访问
4.13 版本管理
4.13.1 尽可能推迟
4.13.2 及早发现破坏性修改
4.13.3 使用语义化的版本管理
4.13.4 不同的接口共存
4.13.5 同时使用多个版本的服务
4.14 用户界面
4.14.1 走向数字化
4.14.2 约束
4.14.3 API组合
4.14.4 UI片段的组合
4.14.5 为前端服务的后端
4.14.6 一种混合方式
4.15 与第三方软件集成
4.15.1 缺乏控制
4.15.2 定制化
4.15.3 意大利面式的集成
4.15.4 在自己可控的平台进行定制化
4.15.5 绞杀者模式
4.16 小结
第 5 章 分解单块系统
5.1 关键是接缝
5.2 分解MusicCorp
5.3 分解单块系统的原因
5.3.1 改变的速度
5.3.2 团队结构
5.3.3 安全
5.3.4 技术
5.4 杂乱的依赖
5.5 数据库
5.6 找到问题的关键
5.7 例子:打破外键关系
5.8 例子:共享静态数据
5.9 例子:共享数据
5.10 例子:共享表
5.11 重构数据库
实施分离
5.12 事务边界
5.12.1 再试一次
5.12.2 终止整个操作
5.12.3 分布式事务
5.12.4 应该怎么办呢
5.13 报告
5.14 报告数据库
5.15 通过服务调用来获取数据
5.16 数据导出
另一个方向
5.17 事件数据导出
5.18 数据导出的备份
5.19 走向实时
5.20 修改的代价
5.21 理解根本原因
5.22 小结
第 6 章 部署
6.1 持续集成简介
你真的在做CI吗
6.2 把持续集成映射到微服务
6.3 构建流水线和持续交付
不可避免的例外
6.4 平台特定的构建物
6.5 操作系统构建物
6.6 定制化镜像
6.6.1 将镜像作为构建物
6.6.2 不可变服务器
6.7 环境
6.8 服务配置
6.9 服务与主机之间的映射
6.9.1 单主机多服务
6.9.2 应用程序容器
6.9.3 每个主机一个服务
6.9.4 平台即服务
6.10 自动化
关于自动化好处的两个案例研究
6.11 从物理机到虚拟机
6.11.1 传统的虚拟化技术
6.11.2 Vagrant
6.11.3 Linux容器
6.11.4 Docker
6.12 一个部署接口
环境定义
6.13 小结
第 7 章 测试
7.1 测试类型
7.2 测试范围
7.2.1 单元测试
7.2.2 服务测试
7.2.3 端到端测试
7.2.4 权衡
7.2.5 比例
7.3 实现服务测试
7.3.1 mock还是打桩
7.3.2 智能的打桩服务
7.4 微妙的端到端测试
7.5 端到端测试的缺点
7.6 脆弱的测试
7 ............
书籍插图:
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » 微服务设计 - (EPUB全文下载)