Pulsar Functions 提供三种不同的消息语义,可以应用于任何functions中:
Delivery semantics | Description |
---|---|
At-most-once delivery | 发送给函数的每个消息最多会被处理一次 |
At-least-once delivery | 发送给函数的每条消息至少被处理一次 |
Effectively-once delivery | 发送函数的每条消息没精确的处理一次 |
在 function 中提供 processing guarantees
创建 Function 时,您可以为 Pulsar Function 设置 processing guarantees 。 例如, pulsar-function create
这一命令将对函数应用 effectively-once 保证,即发送给函数的每条消息均被精确处理一次:
$ bin/pulsar-admin functions create \
--processing-guarantees EFFECTIVELY_ONCE \
# Other function configs
可用选项包括:
ATMOST_ONCE
ATLEAST_ONCE
EFFECTIVELY_ONCE
By default, Pulsar Functions provide at-least-once delivery guarantees. So if you create a function without supplying a value for the
--processingGuarantees
flag, then the function will provide at-least-once guarantees.
在 function 中更新 processing guarantees
You can change the processing guarantees applied to a function once it’s already been created using the update
command. Here’s an example:
$ bin/pulsar-admin functions update \
--processing-guarantees ATMOST_ONCE \
# Other function configs
当前内容版权归 Apache Pulsar 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 Apache Pulsar .