更新时间:2024-09-05 17:10:56
封面
版权信息
版权
内容提要
译者序
序
前言
致谢
关于本书
谁应该读这本书
本书的组织路线图
关于代码
关于作者
译者介绍
服务与支持
第一部分 云原生基础
第1章 云原生简介
1.1 什么是云原生
云原生的3P
1.2 云和云计算模型
1.2.1 基础设施即服务
1.2.2 容器即服务
1.2.3 平台即服务
1.2.4 函数即服务
1.2.5 软件即服务
1.3 云原生应用的属性
1.3.1 可扩展性
1.3.2 松耦合
1.3.3 韧性
1.3.4 可观测性
1.3.5 可管理性
1.4 支撑云原生的文化与实践
1.4.1 自动化
1.4.2 持续交付
1.4.3 DevOps
1.5 云是最佳方案吗
1.5.1 速度
1.5.2 韧性
1.5.3 扩展
1.5.4 节省成本
1.6 云原生拓扑结构
1.6.1 容器
1.6.2 编排
1.6.3 Serverless
1.7 云原生应用的架构
1.7.1 从多层架构到微服务和其他架构
1.7.2 基于服务架构的云原生应用
1.8 小结
第2章 云原生模式与技术
2.1 云原生开发原则:12-Factor及其扩展
2.1.1 一份基准代码,一个应用
2.1.2 API优先
2.1.3 依赖管理
2.1.4 设计、构建、发布和运行
2.1.5 配置、凭证和代码
2.1.6 日志
2.1.7 易处理
2.1.8 支撑服务
2.1.9 环境对等
2.1.10 管理进程
2.1.11 端口绑定
2.1.12 无状态进程
2.1.13 并发
2.1.14 遥测
2.1.15 认证与授权
2.2 使用Spring构建云原生应用
2.2.1 Spring全景图概览
2.2.2 构建Spring Boot应用
2.3 使用Docker容器化应用
2.3.1 Docker简介:镜像与容器
2.3.2 以容器形式运行Spring应用
2.4 使用Kubernetes管理容器
2.4.1 Kubernetes简介:Deployment、Pod与Service
2.4.2 在Kubernetes中运行Spring应用
2.5 云原生样例:Polar Bookshop
2.5.1 理解系统需求
2.5.2 探索项目中所使用的模式和技术
2.6 小结
第二部分 云原生开发
第3章 云原生开发入门
3.1 启动云原生项目
3.1.1 一份基准代码,一个应用
3.1.2 使用Gradle和Maven进行依赖管理
3.2 使用嵌入式服务器
3.2.1 可执行的JAR文件与嵌入式服务器
3.2.2 理解“每个请求一个线程”模型
3.2.3 配置嵌入式服务器
3.3 使用Spring MVC构建RESTful应用
3.3.1 先有REST API,后有业务逻辑
3.3.2 使用Spring MVC实现REST API
3.3.3 数据验证和错误处理
3.3.4 为满足未来需求而不断演进的API
3.4 使用Spring测试RESTful应用
3.4.1 使用JUnit 5进行单元测试
3.4.2 使用@SpringBootTest进行集成测试
3.4.3 使用@WebMvcTest测试REST控制器
3.4.4 使用@JsonTest测试JSON序列化
3.5 部署流水线:构建与测试
3.5.1 理解部署流水线的提交阶段
3.5.2 使用GitHub Actions实现提交阶段