-
内容大纲
本书通过开发微服务示例程序来讲解Dapr的各项功能,并介绍其众多构建块的功能及使用方法。本书首先介绍了Dapr的基础知识以及相关环境的配置工作,以帮助读者快速进入Dapr的世界。其次,介绍了Dapr的核心概念、发布/订阅机制、资源绑定构建块与虚拟actor模型等相关知识,让读者进一步了解Dapr的相关功能。最后,介绍了Dapr的实际运用,包括Dapr应用的部署与可观测性,以及在Kubernetes环境中对服务和actor等进行伸缩操作。本书可以帮助读者快速熟悉微服务架构,并运用Dapr来管理应用的复杂性和克服异构系统等问题。
本书适合希望探索微服务架构并在Dapr应用中通过Microsoft.NET Core来实现这些架构的开发人员阅读。 -
作者介绍
-
目录
第一部分 Dapr基础
第1章 Dapr简介
1.1 技术要求
1.2 Dapr概述
1.3 Dapr架构
1.4 设置Dapr启动环境
1.4.1 Docker
1.4.2 Dapr CLI
1.4.3 .NET
1.4.4 VS Code
1.4.5 Windows终端
1.4.6 在自托管模式下安装Dapr
1.4.7 在Kubernetes上安装Dapr
1.4.8 升级Dapr版本
1.5 开发第一个Dapr示例程序
1.6 小结
第2章 调试Dapr解决方案
2.1 技术要求
2.2 在VS Code中配置和调试Dapr
2.2.1 连接调试器
2.2.2 检验调试配置
2.3 调试一个多项目的Dapr解决方案
2.3.1 创建.NET解决方案
2.3.2 启动配置
2.3.3 任务
2.3.4 启动独立的调试会话
2.3.5 启动组合的调试会话
2.4 结合Tye使用Dapr
2.4.1 安装Tye
2.4.2 使用Tye
2.5 小结
第二部分 使用Dapr构建微服务
第3章 服务间调用
3.1 技术要求
3.2 服务如何在Dapr中工作
3.2.1 示例程序架构
3.2.2 服务间调用
3.2.3 名称解析
3.3 使用.NETSDK进行服务调用
3.3.1 为orderservice创建一个项目
3.3.2 在ASP.NET中配置Dapr
3.3.3 通过ASP.NET控制器实现Dapr
3.3.4 为reservation service创建一个项目
3.3.5 准备调试配置
3.3.6 通过ASP.NET路由实现Dapr
3.3.7 回顾
3.4 Dapr服务的HTTP和gRPC调用
3.4.1 在ASP.NET中使用gRPC
3.4.2 微服务的自治
3.4.3 通过gRPC降低延迟
3.5 小结
第4章 状态管理
4.1 技术要求
4.2 Dapr状态管理
4.2.1 服务的状态——无状态和有状态
4.2.2 Dapr中的状态存储
4.2.3 事务
4.2.4 并发性
4.2.5 一致性
4.2.6 与状态存储的交互
4.3 电子商务网站的有状态服务
4.3.1 有状态的reservation-service
4.3.2 在ASP.NET控制器中处理Dapr状态
4.4 基于Azure Cosmos DB的状态存储
4.4.1 创建Azure Cosmos DB
4.4.2 配置状态存储
4.4.3 测试状态存储
4.4.4 Azure Cosmos DB分片
4.4.5 补充
4.5 小结
第5章 发布订阅
5.1 技术要求
5.2 在Dapr中使用pub/sub设计模式
5.3 在Dapr中使用Azure Service Bus
5.3.1 订阅主题
5.3.2 配置发布订阅组件
5.3.3 发布到主题
5.3.4 检查消息
5.4 实现saga设计模式
5.4.1 向Dapr发布消息
5.4.2 订阅Dapr主题
5.4.3 测试saga设计模式
5.5 小结
第6章 资源绑定
6.1 技术要求
6.2 学习如何使用Dapr绑定
6.2.1 配置cron输入绑定
6.2.2 测试cron绑定
6.3 在Dapr中使用Twilio输出绑定
6.3.1 注册Twilio试用账户
6.3.2 配置Twilio输出绑定
6.3.3 通过输出绑定发送信号
6.3.4 验证通知
6.4 在C#中通过Azure Event Hubs输入绑定摄取数据
6.4.1 创建Azure Event Hubs绑定
6.4.2 配置输入绑定
6.4.3 实现Azure Event Hubs输入绑定
6.4.4 产生事件
6.5 小结
第7章 actor的用法
7.1 技术要求
7.2 在Dapr中使用actor
7.2.1 actor模型简介
7.2.2 配置Dapr actor状态存储
7.2.3 验证状态存储
7.3 actor的生命周期、并发性和一致性
7.3.1 placement服务
7.3.2 并发性和一致性
7.3.3 actor的生命周期
7.4 在电子商务网站预订系统中使用actor
7.4.1 创建actor项目
7.4.2 实现actor模型
7.4.3 在其他Dapr应用中访问actor
7.4.4 查看actor的状态
7.5 小结
第三部分 部署和伸缩
第8章 在Kubernetes中部署Dapr应用
8.1 技术要求
8.2 创建Kubernetes
8.2.1 创建Azure资源组
8.2.2 创建AKS集群
8.2.3 连接AKS集群
8.3 在Kubernetes中安装Dapr
8.4 部署Dapr应用
8.4.1 构建容器镜像
8.4.2 推送容器镜像
8.4.3 在Kubernetes中管理密码
8.4.4 Dapr应用部署
8.5 将Dapr应用暴露给外部客户端
8.6 小结
第9章 追踪Dapr应用
9.1 技术要求
9.2 观测Dapr中的应用
9.3 使用Zipkin进行追踪
9.3.1 设置Zipkin
9.3.2 配置Zipkin进行追踪
9.3.3 在Dapr中启用追踪
9.3.4 使用Zipkin追踪
9.4 使用Prometheus和Grafana分析指标
9.4.1 安装Prometheus
9.4.2 安装Grafana
9.4.3 导入Dashboard模板
9.5 小结
第10章 负载测试和伸缩
10.1 技术要求
10.1.1 Bash
10.1.2 Python
10.1.3 Locust
10.1.4 Kubernetes配置
10.2 在Kubernetes中伸缩Dapr应用
10.2.1 副本
10.2.2 自动伸缩
10.2.3 资源请求和资源限制
10.3 使用Locust进行负载测试
10.4 Dapr应用的负载测试
10.4.1 通过端口转发准备数据
10.4.2 在本地测试Locust
10.4.3 在ACI中运行Locust
10.4.4 配置HPA
10.5 使用KEDA进行自动伸缩
10.6 小结
附录A 使用Dapr的微服务架构
A.1 发现微服务
A.1.1 服务
A.1.2 自治
A.1.3 自动化部署
A.1.4 有界上下文
A.1.5 松耦合
A.1.6 事件驱动架构
A.1.7 可观察性
A.1.8 可持续性
A.2 采用微服务模式
A.3 构建一个电子商务网站架构
A.3.1 定义有界上下文
A.3.2 示例:销售微服务
A.4 使用Dapr构建微服务
A.4.1 松耦合的微服务
A.4.2 自治的微服务
A.4.3 可观察的微服务
A.4.4 可扩展的微服务
A.4.5 事件驱动的微服务
A.4.6 无状态的微服务
A.5 小结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...