绑定概述
Dapr 绑定API构建块概述
使用 Dapr 的绑定 API,你可以使用来自外部系统的事件触发应用,并与外部系统交互。 使用绑定 API,您可以:
- 避免与队列和消息总线等消息系统连接和轮询的复杂性。
- 关注业务逻辑,而不是与系统交互的执行细节。
- 让您的代码远离 SDK 或库。
- 处理重试和故障恢复。
- 在运行时切换绑定
- 利用特定环境绑定设置构建可移植应用程序,无需更改代码。
例如,有了绑定,您的应用程序就可以响应传入的 Twilio/SMS 消息,而不需要
- 添加或配置第三方 Twilio SDK
- 担心来自 Twilio 的轮询(或使用 WebSockets 等)
在上图中
- 输入绑定会触发应用程序的一个方法。
- 在组件上执行输出绑定操作,如
"create"
。
绑定是独立于 Dapr 运行时开发的。 您可以查看并贡献绑定。
注意
如果您正在使用HTTP绑定,则最好使用服务调用。 阅读操作方法:使用HTTP调用非Dapr端点以获取更多信息。
输入绑定
通过输入绑定,您可以在外部资源发生事件时触发应用程序。 可选择随请求发送有效载荷和元数据。
以下概述视频和演示演示了Dapr输入绑定是如何工作的。
接收来自输入绑定的事件:
- 定义描述绑定类型及其元数据(连接信息等)的 YAML 组件。
- 监听传入事件:
- HTTP 端点
- 用于获取传入事件的 gRPC 原型库。
注意
在启动时,Dapr会向应用程序发送OPTIONS请求,以获取所有已定义的输入绑定。 如果应用程序要订阅绑定,Dapr 将收到 2xx 或 405 的状态代码。
阅读使用输入绑定创建事件驱动应用指南以开始使用输入绑定。
输出绑定
使用输出绑定,您可以调用外部资源。 调用请求可发送可选的有效载荷和元数据。
以下概述视频和演示演示了Dapr中的输出绑定是如何工作的。
调用输出绑定:
- 定义描述绑定类型及其元数据(连接信息等)的 YAML 组件。
- 使用 HTTP 端点或 gRPC 方法调用带有可选有效载荷的绑定。
- 指定输出操作。 输出操作取决于您使用的绑定组件,可包括
"create"
"update"
"delete"
"exec"
开始使用输出绑定,请参阅使用输出绑定向外部系统发送事件指南。
绑定方向(可选)
您可以提供direction
元数据字段来指明绑定组件支持的方向。 这样,Dapr sidecar避免了"等待应用程序准备就绪"
的状态,减少了Dapr sidecar与应用程序之间的生命周期依赖性:
"input"
"output"
"input, output"
注意
强烈建议所有输入绑定都包含 direction
属性。
试用绑定
快速启动和教程
想测试一下 Dapr 绑定 API 吗? 浏览以下快速入门和教程以查看 绑定 的实际应用:
快速入门/教程 | 说明 |
---|---|
绑定快速入门 | 使用输入绑定响应事件,使用输出绑定调用操作,与外部系统协作。 |
绑定教程 | 演示如何使用 Dapr 创建与其他组件的输入和输出绑定。 使用与 Kafka 的绑定。 |
开始直接在应用程序中使用绑定
想跳过快速入门? Not a problem. 您可以直接在应用程序中尝试 绑定 构建块,以调用输出绑定并触发输入绑定。 安装Dapr之后,您可以开始使用绑定 API,从输入绑定操作方法指南开始。