Learning Dapr
作者: Haishi Bai and Yaron Schneider
语言: 英文
出版年份: 2020
下载链接:
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。

书籍摘要

《Learning Dapr》由 Haishi Bai 和 Yaron Schneider 合著,于 2020 年由 O’Reilly Media 出版。本书深入介绍了 Dapr(Distributed Application Runtime)这一分布式应用运行时的相关知识,旨在帮助读者理解 Dapr 的设计理念、架构以及如何将其应用于实际开发中。

作者简介

  • Haishi Bai:在微软 Azure CTO 办公室工作,领导多个云创新项目,拥有超过 30 年的编程经验,同时热衷于教育工作,出版过多本云计算书籍。
  • Yaron Schneider:微软 Azure CTO 团队的首席软件工程师,曾在微软担任云解决方案架构师,专注于容器、机器学习、大数据和无服务器计算等领域,同时也是开源项目的贡献者。

书籍内容概述

第一部分:Dapr 介绍与背景

  • 分布式应用的挑战:介绍了云计算环境下分布式应用面临的可用性、弹性等问题,以及 Dapr 如何通过服务网格和容器化技术解决这些问题。
  • Dapr 的诞生:讲述了 Dapr 的起源,包括其从 Reaktive 到 Actions 再到 Dapr 的演变过程,以及它如何成为微软发起的最成功的开源项目之一。

第二部分:Dapr 架构与核心功能

  • 架构设计:详细介绍了 Dapr 的架构,包括 Dapr CLI、Dapr 运行时、Dapr 侧边车(sidecar)等组件及其工作原理。
  • 核心功能
    • 服务调用:通过 HTTP/gRPC 协议实现服务间的直接调用,支持跨语言和服务网格集成。
    • 状态管理:提供了简单易用的状态 API,支持多种存储后端,如 Redis、Azure Cosmos DB 等。
    • 发布/订阅(Pub/Sub):通过集成多种消息中间件(如 Redis Streams、NATS、Kafka 等)实现服务间的消息传递。
    • 绑定(Bindings):允许应用通过简单的 HTTP 请求与外部系统(如云服务、数据库等)进行交互。

第三部分:Dapr 的实践与应用

  • 开发与部署
    • 本地开发:介绍了如何在本地使用 Dapr 的独立模式(standalone mode)进行开发和测试。
    • Kubernetes 部署:详细说明了如何在 Kubernetes 环境中部署 Dapr,包括侧边车注入、服务发现和配置管理。
  • 应用示例
    • Hello World 示例:通过一个简单的 “Hello World” 应用展示了如何使用 Dapr 实现服务调用和状态管理。
    • 多语言支持:提供了使用 Go、Python、Java、C# 等不同语言编写的示例代码,展示了 Dapr 的语言无关性。
  • 高级功能
    • 分布式追踪:介绍了如何通过 OpenTelemetry 实现分布式应用的追踪和监控。
    • 安全性:讲解了 Dapr 如何通过 mTLS、OAuth 2.0 等技术保障应用的安全性。
    • Actor 模型:介绍了 Dapr 对 Actor 模型的支持,包括状态管理、定时器、提醒器等功能。

第四部分:Dapr 的未来展望

  • 能力交付:探讨了 Dapr 作为能力交付平台的潜力,如何通过插件机制支持更多功能。
  • 边缘计算:讨论了 Dapr 在边缘计算场景中的应用,包括轻量级函数运行时和 WebAssembly 的支持。
  • 社区贡献:强调了 Dapr 社区的重要性,鼓励开发者参与贡献,共同推动 Dapr 的发展。

适用读者

本书适合以下读者:

  • 对分布式应用开发感兴趣的开发者和架构师。
  • 希望在 Kubernetes 或边缘计算环境中部署应用的工程师。
  • 想要了解如何通过 Dapr 实现微服务架构的团队。

总结

《Learning Dapr》是一本全面且实用的书籍,不仅详细介绍了 Dapr 的架构和功能,还通过丰富的示例和实践指导帮助读者快速上手。无论你是分布式应用开发的新手还是有经验的开发者,这本书都能为你提供宝贵的参考和启发。

期待您的支持
捐助本站