【发布时间】:2021-12-26 23:15:51
【问题描述】:
我制作了 spring 批处理应用程序,它产生由 json 对象列表组成的 amqp (rabbitmq) 消息。消息的标头带有一些元数据。 Spring Cloud Stream 应用正在消费消息,我使用了函数式方法。如何访问标题?
将消息头用于除路由之外的其他任何事情都是不好的方法吗?
【问题讨论】:
标签: rabbitmq spring-cloud-stream spring-amqp
我制作了 spring 批处理应用程序,它产生由 json 对象列表组成的 amqp (rabbitmq) 消息。消息的标头带有一些元数据。 Spring Cloud Stream 应用正在消费消息,我使用了函数式方法。如何访问标题?
将消息头用于除路由之外的其他任何事情都是不好的方法吗?
【问题讨论】:
标签: rabbitmq spring-cloud-stream spring-amqp
如果您在 Spring Cloud Stream 应用程序中的函数签名接受 Message(例如):
@Bean
public Consumer<Message<?>> consume() {
return message -> {
message.getHeaders()....
};
}
。 .那么您可以简单地访问邮件标题。 我们也在努力简化它。
不,将消息头用于除路由之外的任何内容都不是一种糟糕的方法。 将 Message Headers 视为元信息,仅与当前消息相关。 . .对当前消息重要但对之后不重要的任何内容。
【讨论】: