我是Spring-Integration的新手。
我的用例是:
收听RabbitMQ队列/主题,获取消息,对其进行处理,然后将其发送给其他消息代理(大多数情况下将是另一个RabbitMQ实例)。
预期负载:5000条消息/秒
在application.properties中,我们可以为一台主机设置配置。
如何在两个消息代理之间使用Spring Integration?
我看到的所有示例都是针对一个消息代理的。任何使用两个消息代理和Spring Integration入门的指针。
此致
马西什
答案 0 :(得分:1)
自从您提到application.properties
以来,听起来好像您在使用具有自动配置功能的Spring Boot。这是您问题中非常重要的细节,因为Spring Boot对自动配置有意见,并且您实际上只能自动配置一个代理连接配置。如果您希望在同一应用程序中拥有另一个类似的产品,则应该忘记该自动配置功能。您仍然可以使用上面提到的application.properties
,但必须手动进行管理。
由于您谈论的是RabbitMQ连接,因此您需要排除RabbitAutoConfiguration
并手动管理所有必需的bean:
@SpringBootApplication(exclude = RabbitAutoConfiguration.class)
您仍然可以在某些@EnableConfigurationProperties(RabbitProperties.class)
类上使用@Configuration
来注入RabbitProperties
并填充相应的CachingConnectionFactory
。对于第二个代理,您可以介绍自己的@ConfigurationProperties
或仅通过@Value
手动配置所有属性。请参阅Spring AMQP参考手册中有关手动连接工厂配置的更多信息:https://docs.spring.io/spring-amqp/docs/2.2.1.RELEASE/reference/html/#connections