Dapr:分布式应用的运行时

Dapr 在 GitHub 上已获得 25,902 Star。

这是一个开源运行时,为分布式应用、工作流和 AI Agent 提供基础设施层。它以 sidecar 形式运行,通过 HTTP 和 gRPC 暴露能力,支持 .NET、Java、Python、Go、JavaScript/TypeScript 和 Rust。

1、这项目是干嘛的

Dapr 提供一组 API,覆盖工作流、服务调用、状态管理、发布订阅、Actor、LLM 对话、绑定、密钥、配置、分布式锁、加密和任务调度。

正文顶部截图

开发者不需要直接处理线程、分区、重试等底层逻辑。这些能力通过 sidecar 提供,应用代码保持不变,可以在 Kubernetes、云主机、边缘设备或本地机器上运行。

2、为什么要用它

现代应用包含长周期工作流、AI Agent、事件驱动管道、多 Agent 系统和人机协作流程,必须在生产环境中承受故障、保持状态并安全通信。

自己实现这些能力需要处理持久化、重试、网络分区、证书管理、访问控制等细节。Dapr 把这些模式打包成一致的编程模型,平台团队可用它制定治理规范,应用团队则获得跨环境一致的 API。

3、持久化执行

Dapr Workflows 提供持久化执行。进度会被自动保存,遇到进程崩溃、Pod 重启、节点故障、滚动更新或基础设施中断时,执行会从最后一个完成的步骤恢复。

开发者用普通代码编写工作流,Dapr 负责状态持久化和故障恢复。场景包括 AI Agent、客户入职、订单处理、人工审批、文档处理等。

4、构建 AI Agent

AI Agent 要在生产环境运行,需要状态、编排、恢复、安全通信和治理能力。Dapr 提供运行 Agent 所需的原语,并与现有 AI 框架和模型协同工作。

能力包括:

  • 可承受崩溃和重启的持久化 Agent 执行
  • 基于 Workflows 的长周期多步骤任务
  • 多 Agent 编排和 Agent 间通信
  • 跨交互的状态持久化
  • 通过 Conversation API 调用 LLM,支持提示缓存和工具调用
  • 人机协作审批和事件驱动协调
  • 故障后自动恢复

5、默认安全

每个 Dapr 应用都会获得可验证的身份。安全机制包括:

  • 服务间流量使用 mTLS
  • 工作负载身份和认证
  • 最小权限授权策略
  • 从外部密钥仓库获取密钥
  • 自动证书签发和轮换
  • 零信任通信

可以通过配置定义访问策略,控制哪些应用、Agent 和服务可以相互通信,无需自行编写安全基础设施。

6、分布式应用 API

Dapr 的所有 API 都通过 HTTP 和 gRPC 暴露,并提供 Java、.NET、Go、JavaScript、Python、Rust、C++ 和 PHP 的 SDK。

README区域截图

主要 API 包括:

  • Workflows:以代码形式编写长周期工作流和 Agent 流程
  • Service Invocation:服务间调用,内置 mTLS、重试和可观测性
  • State Management:在多种存储后端上持久化和查询状态
  • Pub/Sub:基于消息代理构建事件驱动系统
  • Actors:构建有状态的 Actor 应用
  • Conversation:通过统一 API 调用 LLM
  • Bindings:从外部系统触发代码或向其发送事件
  • Secrets:从外部密钥仓库获取密钥
  • Configuration:读取和订阅配置
  • Distributed Lock:协调对共享资源的访问
  • Cryptography:在不暴露密钥的情况下加密解密数据
  • Jobs:调度现在或未来执行的任务

7、随处运行

Dapr 以 sidecar 形式运行,二进制约 58MB,内存占用约 4MB。它支持以下环境:

  • Kubernetes
  • AWS、Azure、Google Cloud
  • 虚拟机和裸金属
  • 边缘和 IoT 环境
  • 气隙网络部署

由于能力通过 sidecar 暴露,应用不需要修改代码即可在不同平台间迁移。可以逐个 API 增量采用,不存在运行时锁定。

8、生产验证

Dapr 是 CNCF 毕业项目,被多个组织用于构建关键业务应用。团队选择 Dapr 来自动从故障中恢复、构建 AI 系统、保护服务间通信、简化分布式架构并避免基础设施锁定。

Dapr 是 CNCF 毕业项目,被多个组织用于构建关键业务应用。团队选择 Dapr 来自动从故障中恢复、构建 AI 系统、保护服务间通信、简化分布式架构并避免基础设施锁定。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐