组件

在 Dapr 中,组件是应用程序与外部资源交互的关键。它们可以是数据库、消息队列、秘密管理系统等。开发者可以通过配置这些组件,轻松地在应用程序中集成和使用这些外部资源。

Dapr 提供了一种声明式的方法来管理组件。每个组件都通过一个 YAML 文件定义,该文件描述了组件的类型、元数据和其他配置细节。以下是一个简单的组件定义示例:

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: my-pubsub
  namespace: default
spec:
  type: pubsub.redis
  version: v1
  metadata:
  - name: redisHost
    value: "localhost:6379"
  - name: redisPassword
    secretKeyRef:
      name: redis-secret
      key: password

在这个示例中,我们定义了一个名为 my-pubsub 的发布订阅组件,它使用 Redis 作为底层实现。组件的元数据部分指定了 Redis 主机和密码,其中密码是通过 secret 管理的。

要在应用程序中使用这些组件,开发者只需在应用程序代码中引用组件名称即可。Dapr 的 sidecar 会自动处理与组件的交互,使得开发者无需关心底层实现细节。

通过这种方式,Dapr 提供了一种灵活且可扩展的方式来管理应用程序中的外部资源,使得开发者可以专注于业务逻辑,而不是基础设施管理。


认证流程

组件从提交到生产就绪的认证流程

更新组件

更新应用程序使用的已部署组件

操作指南:将组件限定于一个或多个应用程序

限制组件访问特定的Dapr实例

操作指南:在组件中引用secret

如何在组件定义中安全地引用secret

状态存储组件

关于为 Dapr 状态管理设置不同状态存储的指导

发布/订阅代理

关于为 Dapr 发布/订阅设置不同消息代理的指导

Secret 存储组件

关于设置不同 Secret 存储组件的指南

Bindings 组件

关于设置 Dapr bindings 组件的指导

如何:注册一个可插拔组件

学习如何注册一个可插拔组件

配置中间件组件

通过添加中间件组件自定义处理管道