【发布时间】:2019-04-30 07:30:36
【问题描述】:
我正在尝试了解 AMQP 消息中的 app_id 和 cluster_id 字段。 我什至尝试阅读以下定义的 AMQP 规范:
但不清楚 app_id 和 cluster_id 字段是什么。 这在 AMQP 1.0 中同样不清楚(rabbitmq 默认不使用)
(这与我的另一个问题AMQP (rabbitmq) identify origin of bad message有关)
【问题讨论】:
我正在尝试了解 AMQP 消息中的 app_id 和 cluster_id 字段。 我什至尝试阅读以下定义的 AMQP 规范:
但不清楚 app_id 和 cluster_id 字段是什么。 这在 AMQP 1.0 中同样不清楚(rabbitmq 默认不使用)
(这与我的另一个问题AMQP (rabbitmq) identify origin of bad message有关)
【问题讨论】:
目前我得到的最佳答案来自:
https://www.rabbitmq.com/resources/specs/amqp0-9-1.extended.xml
上面写着:
<!-- For application use, no formal behaviour -->
<field name="app-id" domain="shortstr" label="creating application id"/>
<!-- Deprecated, was old cluster-id property -->
<field name="reserved" domain="shortstr" label="reserved, must be empty"/>
无论 cluster_id 最初的用途是什么(也许是标识一个集群?),它都不再使用了。
评论指出“没有正式行为”,我将其解释为标题是允许的,但它完全是实现定义的,可以用于任何事情。 鉴于您还可以拥有自定义标头(例如,请参阅 this question),让任何标头没有明确定义的语义似乎很奇怪(糟糕的协议设计?)。
【讨论】: