两个消息代理之间的弹簧集成



我是Spring-Integration的新手。

我的用例是:

监听 RabbitMQ队列/主题,获取消息,处理消息,将其发送到其他消息代理(大多数情况下它将是另一个 RabbitMQ 实例(。

预期负载:5000 条消息/秒

在应用程序属性中,我们可以为一个主机设置配置。

如何在两个消息代理之间使用 Spring 集成?

我看到的所有示例都是针对一个消息代理的。任何开始使用两个消息代理和 Spring 集成的指针。

问候

马赫什

既然你提到了一个application.properties听起来你使用 Spring Boot 及其自动配置功能。这是您问题中非常重要的细节,因为 Spring Boot 对自动配置有意见,并且您实际上只能自动配置一个代理连接配置。如果您想在同一应用程序中拥有另一个类似的应用程序,那么您应该忘记自动配置功能。您仍然可以使用 上述application.properties,但您必须手动管理它们。

既然你谈论的是 RabbitMQ 连接,所以你需要排除RabbitAutoConfiguration并手动管理所有必需的 bean:

@SpringBootApplication(exclude = RabbitAutoConfiguration.class)

您仍然可以在某些@Configuration类上使用@EnableConfigurationProperties(RabbitProperties.class),以便能够注入该RabbitProperties并填充相应的CachingConnectionFactory。对于第二个代理,您可以引入自己的@ConfigurationProperties,或者只是通过@Value手动配置读取属性的所有内容。有关手动连接工厂配置的更多信息,请参阅 Spring AMQP 参考手册:https://docs.spring.io/spring-amqp/docs/2.2.1.RELEASE/reference/html/#connections

最新更新