理解、替换、配置和修改SpringRabbit(AMQP)线程池:问题列表
我有几个关于RabbitMQ+Spring的简短问题,非常感谢您在这件事上的帮助 阅读文档后理解、替换、配置和修改SpringRabbit(AMQP)线程池:问题列表,spring,rabbitmq,spring-amqp,spring-rabbit,Spring,Rabbitmq,Spring Amqp,Spring Rabbit,我有几个关于RabbitMQ+Spring的简短问题,非常感谢您在这件事上的帮助 阅读文档后 这里() 和这里() Java+Spring客户端的api似乎有一个名为CachingConnectionFactory的类 事实: CachingConnectionFactory有两个intrest成员:PublisherConnectionFactory和RabbitConnectionFactory CachingConnectionFactory扩展了名为AbstractConnectionF
这里()
和这里()
Java+Spring客户端的api似乎有一个名为CachingConnectionFactory的类 事实:
提前感谢我刚刚在
rabbitmq用户
谷歌群上回答了您的问题
我可以回答春天的问题
CachingConnectionFactory、PublisherConnectionFactory和RabbitConnectionFactory之间的区别和关系是什么
CCF是主要工厂;默认情况下。它的单个连接由所有组件共享(但它具有支持多个连接的缓存模式)。
PCF是可用于发布的可选CCF(当rabbitImplate.usePublisherConnection
为true时)。建议这样做,以便在阻止发布服务器时,允许用户继续使用
CCF executorService(如果存在)被传递到RCF.newConnection()。
channelsExecutor是一个内部执行器,仅在发布者确认已启用时使用;它用于延迟通道关闭请求,直到发布者确认到达(或超时)
为什么我们需要这么多不同的执行人池?
它们之间有什么区别?
这些类是否共享它们的线程池/执行器
CCF executorService(如果存在)被传递到RCF.newConnection()
当连接打开时,它被分配到哪个线程池
CCF executorService(如果存在)被传递到RCF.newConnection()
。否则,amqp客户端将使用自己的执行器
当通道打开时,它分配给哪个线程池?
发布和使用操作是否使用不同的线程池
如果rabbitmplate.usePublisherConnection
为真,并且PCF具有不同的执行器
如何传入自己的执行器实现或以其他方式配置上述每个执行器
有两个CCF执行器的setter方法。
如果希望在PCF中使用不同的执行器,请使用CCF.getPublisherConnectionFactory()
并调用其setter
合并/统一部分或全部执行人是个好主意吗
迟做总比不做好,但我终于有了足够的声誉来接受你的回答。谢谢你的帮助!