我有一个使用 rabbit 来分发任务的多层工作模式实现,因此消息通过许多“listners”之一进入(一个执行器服务,有许多线程调用 consumer.basicConsume(),每个线程都有自己的 Channel)。消息在应用程序中传递,然后在最后阶段被 ack 侦听器拾取(同样,用自己的不同通道用尽其自己的 ExecutorService )以进行确认,但是服务器不会拾取 ack . 我写了一个简单的测试,我在同一个线程和不同线程中确认来自不同通道的消息,在它们工作的同一个线程上,在不同的线程上它们不工作,并且不同线程上的相同通道也可以工作.
有没有人遇到过这个?我真的不想保留频道到 ID 的映射。