나는 RabbitMQ 교환기에 내구성있는 메시지를 보내는 생산자가 있습니다. RabbitMQ 메모리 또는 디스크가 워터 마크 임계 값을 초과하면 RabbitMQ가 내 제작자를 차단합니다. 설명서에 따르면 소켓에서 읽는 것을 멈추고 하트 비트를 일시 중지합니다.알람 기반 차단 RabbitMQ 제작자를 감지하는 방법?
내가 원하는 것은 생산자 코드에서 내가 차단되었음을 알 수있는 방법입니다. 현재 하트 비트가 활성화되어 있어도 모든 것이 영원히 멈추게됩니다. 내가 차단되어 사용자에게 경고하고/또는 다른 조치를 취할 수 있음을 알 수 있도록 일종의 예외를 받고 싶습니다. 그러나이 작업을 수행 할 방법을 찾을 수 없습니다. Java 및 C# 클라이언트를 모두 사용하고 있으며이 기능이 모두 필요합니다. 어떤 충고? 감사.
가 연결이 차단되었을 때 채널을 설정하려고 주변을 중심으로 비슷한 문제가 있었다 :-(이것이 불가능하면 있지만 (적어도 2.8.6와) RabbitMQ로 말할
고마워요 ... 예, 나는 그것을 두려워했습니다. 스레드를 죽이는 경로에 대해 생각했지만 너무 고통 스럽습니다. 나중 버전에서 블록이 아닌 예외를 얻을 수있는 옵션이 있기를 바랍니다. 그동안 메모리 및 디스크 알람은 물론 사용 및 제한 사항을 주시하는 폴링 스레드를 구현했습니다. 알람이 곧 설정 될 수있는 곳에 사용량이 가까워지면 차단되지 않도록 조치하고 사용자에게 경고합니다. – metaforge
On [flow control doc] (http : // www.rabbitmq.com/memory.html)는 이라고 말합니다. RabbitMQ는 AMQP 0-9-1에 대한 확장을 제공하여 클라이언트가 연결이 차단되었을 때 ** 알림을받을 수 있도록합니다 **. [차단 된 연결 알림] (http://www.rabbitmq.com/connection-blocked.html) – chk