Headers
消息标头在多种 JetStream 上下文中使用,例如去重、自动清除消息、重新发布消息的元数据等。
Nats- 是一个保留命名空间。请为你自定义的消息头使用其他前缀。此列表可能不完整,额外的消息头可能会用于 API 内部消息,或用于监控和控制的消息。
发布
客户端在发布消息时可以设置的标头。这些标头会被服务器识别。
Nats-Msg-Id
客户端定义的消息唯一标识符,服务器将在配置的“重复窗口”内使用该标识符进行去重。
9f01ccf0-8c34-4789-8688-231a2538a98b
2.2.0
Nats-Expected-Stream
用于断言发布的消息将被某个预期的流接收。
my-stream
2.2.0
Nats-Expected-Last-Msg-Id
用于在流级别应用乐观并发控制。该值为最后一个预期的 Nats-Msg-Id,如果当前 ID 不匹配,服务器将拒绝发布。
9f01ccf0-8c34-4789-8688-231a2538a98b
2.2.0
Nats-Expected-Last-Sequence
用于在流级别应用乐观并发控制。该值为最后一个预期的序列号,如果当前序列号不匹配,服务器将拒绝发布。
328
2.2.0
Nats-Expected-Last-Subject-Sequence
用于在主题级别应用乐观并发控制。该值为最后一个预期的序列号,如果当前序列号不匹配消息的主题,服务器将拒绝发布。
38
2.3.1
Nats-Expected-Last-Subject-Sequence-Subject
可能包含通配符的主题。与 Nats-Expected-Last-Subject-Sequence 一起使用。服务器将针对给定主题而非正在发布的主题强制执行最后序列号。
events.orders.1.>
2.11.0
Nats-Rollup
用于清除流或主题级别之前的所有消息。rollup message(汇总消息)将保留在流中。
all 清除整个流,sub 清除发送此消息的主题。不允许使用通配符主题,否则会导致未定义的行为。
2.6.2
重新发布
当消息被流重新发布时(必须在流设置中配置),这些标头会被设置。
不要在客户端发布的消息上设置这些标头。
Nats-Stream
消息重新发布的流名称。
Nats-Stream: my-stream
2.8.3
Nats-Subject
消息的原始主题。
events.mouse_clicked
2.8.3
Nats-Sequence
消息的原始序列号。
193
2.8.3
Nats-Last-Sequence
具有相同主题的消息的最后一个序列号,如果没有,则为零。
190
2.8.3
Nats-Time-Stamp
消息的原始时间戳。
2023-08-23T19:53:05.762416Z
2.10.0
源(Sources)
隐式添加到从其他流获取的消息的标头。
未来消息头内容的格式可能发生变更。请采取保守的解析策略,并假定未来可能会添加更多字段,或更旧版本的 nats-server 可能包含较少的字段。
Nats-Stream-Source
包含空格分隔的: - 原始流名称(如果跨域获取则使用域哈希消歧) - 原始序列号 - 主题过滤器列表 - 目标转换列表 - 原始主题
ORDERS:vSF0ECo6 17 foo.* bar.$1 foo.abc
2.2.0
仅标头
当消费者配置为“仅标头”时添加到消息的标头,省略消息体。
Nats-Msg-Size
表示消息大小(字节)。
1024
2.6.2
镜像
镜像内部流量控制消息使用的标头。
以下内容仅供参考,如有更改,恕不另行通知。
Nats-Last-Consumer
2.2.1
Nats-Last-Stream
2.2.1
Nats-Consumer-Stalled
2.4.0
Nats-Response-Type
2.6.4
最后更新于