更新时间:2024-09-11 16:23:46
封面
版权信息
O'Reilly Media,Inc.介绍
献词
本书赞誉
译者序
序
前言
第0章 导论
0.1 架构之旅
0.2 API简介
0.3 真实示例:会议系统案例研究
0.3.1 会议案例研究中的API类型
0.3.2 改进会议系统的原因
0.3.3 从分层架构到API建模
0.3.4 案例研究:演进步骤
0.3.5 API基础设施和流量模式
0.3.6 会议系统案例研究的路线图
0.4 使用C4图表
0.4.1 C4上下文关系图
0.4.2 C4容器图
0.4.3 C4组件图
0.5 使用架构决策记录
0.5.1 参会者演进ADR
0.5.2 精通API:ADR指南
0.6 小结
第一部分 设计、构建和测试API
第1章 设计、构建和规范API
1.1 案例研究:设计参会者API
1.2 REST介绍
1.2.1 通过示例介绍REST和HTTP
1.2.2 Richardson成熟度模型
1.3 RPC API介绍
1.4 GraphQL简要介绍
1.5 REST API标准和结构
1.5.1 集合和分页
1.5.2 过滤集合
1.5.3 错误处理
1.5.4 ADR指南:选择API标准
1.6 使用OpenAPI规范定义REST API
1.7 OpenAPI规范的实际应用
1.7.1 代码生成
1.7.2 OpenAPI验证
1.7.3 示例和模拟
1.7.4 检测变更
1.8 API版本控制
1.8.1 语义化版本控制
1.8.2 OpenAPI规范和版本控制
1.9 用gRPC实现RPC
1.10 交互建模和API格式选择
1.10.1 高流量服务
1.10.2 大尺寸交互负载
1.10.3 HTTP/2的性能优势
1.10.4 旧格式处理
1.11 指南:交互建模
1.12 同时使用多个规范
1.12.1 是否存在黄金规范
1.12.2 合并规范的挑战
1.13 小结
第2章 API接口测试
2.1 本章的会议系统场景
2.2 测试策略
2.2.1 测试四象限
2.2.2 测试金字塔
2.2.3 用于测试策略的ADR指南
2.3 契约测试
2.3.1 契约测试的益处
2.3.2 契约的实现方式
2.3.3 ADR指南:契约测试
2.4 API组件测试
2.4.1 契约测试和组件测试的比较
2.4.2 案例研究:用组件测试进行验证
2.5 API集成测试
2.5.1 使用存根服务器的好处和方法
2.5.2 ADR指南:集成测试
2.5.3 容器化测试组件:Testcontainers
2.5.4 案例研究:使用Testcontainers验证集成
2.6 端到端测试
2.6.1 自动化端到端验证
2.6.2 端到端测试的类型
2.6.3 ADR指南:端到端测试
2.7 小结
第二部分 API流量管理
第3章 API网关:入口流量管理
3.1 API网关是唯一解决方案吗
3.2 指南:代理、负载均衡器或API网关
3.3 案例研究:向消费者提供参会者服务
3.4 什么是API网关
3.5 API网关能提供哪些功能
3.6 在哪里部署API网关
3.7 API网关如何在网络边缘与其他技术集成
3.8 为何使用API网关
3.8.1 减少耦合:前端和后端之间的适配器/外观
3.8.2 简化调用方式:聚合/转换后端服务
3.8.3 保护API免受过度使用和滥用:威胁检测和防范
3.8.4 了解API是如何被使用的:可观测性
3.8.5 将API作为产品进行管理:API生命周期管理
3.8.6 商业化API:账户管理、计费和支付
3.9 API网关的现代史
3.9.1 20世纪90年代以后:硬件负载均衡器