How-To: 使用输入绑定来触发应用程序
使用绑定,代码可以被来自不同资源的传入事件触发,这些事件可以是任何内容:队列、消息传递管道、云服务、文件系统等。
这对于事件驱动的处理,数据管道或只是对事件作出反应并进一步处理都很理想。
Dapr 绑定允许您 :
- 接收不包含特定 SDK 或库的事件
- 关注业务逻辑而不是事件资源实现
For more info on bindings, read this overview.
输入绑定表示 Dapr 用于读取事件并推送到应用程序的事件资源。
就本指南的目的,我们会使用 Kafka 绑定。 You can find a list of the different binding specs .
创建以下 YAML 文件,名为 binding.yaml,并将其保存到应用程序的 子文件夹中。 (使用具有 --components-path
标记 的 dapr run
命令来指向自定义组件目录)
注: 在 Kubernetes 中运行时,使用 kubectl apply -f binding.yaml
将此文件应用于您的集群
在 metadata
部分中,配置 Kafka 相关属性,如要监听的topics,代理或者更多。
现在配置您的应用程序来接收传入事件。 如果使用 HTTP ,那么需要监听在文件 metadata.name
中指定的绑定名称所对应的POST
终结点。 在此示例中,是 。
以下示例演示了在 Node.js 中您该如何监听事件,但这适用于任何编程语言
为了告诉 Dapr 您成功处理了应用程序中的事件,请从 http 处理程序 返回 200 OK
响应。
事件传递保证由绑定实现控制。 根据绑定实现,事件传递可以正好一次或至少一次。