Mamy do czynienia z przypadkowym problemem z ActiveMQ i jego konsumentami. Zauważamy, że niewielu użytkowników nie otrzymuje wiadomości, mimo że są oni podłączeni do kolejki ActiveMQ. Ale działa dobrze po ponownym uruchomieniu klienta.Konsument nie otrzymuje wiadomości od ActiveMQ
Mamy kolejkę o nazwie testQueue po stronie ActiveMQ. Konsument próbuje usunąć kolejkowane wiadomości z tej kolejki. W tym celu używamy Spring DefaultMessageListenerContainer. Wiadomość jest dostarczana do węzła konsumenta z brokera ActiveMQ. Z tcpdump również było oczywiste, że wiadomość dociera do węzła konsumenta, ale faktyczny kod konsumenta nie jest w stanie zobaczyć komunikatu. Innymi słowy, wiadomość wydaje się być zablokowana w kodzie konsumenta ActiveMQ lub w SpringManageMessageListenerContainer.
Zobacz ilustrację poniżej. dla większej jasności w tej kwestii. Wiadomość dociera do węzła konsumenta, ale nie dociera do "rzeczywistej klasy konsumenckiej", co oznacza, że wiadomość utknęła w kodzie konsumenta AMQ lub w źródłowym DMLC.
Poniżej znajdują się szczegóły uchwycone z ActiveMQ administratora.
Queue-Name/Oczekuje-Message-Count/Consumer-Count/Wiadomości/Wiadomości-skolejkowany-rozkolejkowywana testQueue/9/1/9/0
Poniżej znajduje się więcej szczegółów.
połączenie ID/SessionID/selektor/kolejkuje/Dequeues/sprawdź/sprawdź kolejką/Prefetch ID: bearsvir52-45176-1375519181268-3: 5/1// 9/0/9/9/250
Z drugiej tabeli wiadomo, że wiadomości są dostarczane konsumentowi, ale konsument nie potwierdza wiadomości. W związku z tym wiadomości są zablokowane w Wywoływaniu kolejki po stronie brokera.
kilka punktów do powiadomienia dla:
1) Nie ma różnicy czasu b/w węźle Broker i węzła konsumentów.
2) Obserwowano tcpdump po stronie konsumenta. Widzimy, że pakiet MessageDispatch (Openwire) jest przenoszony do węzła konsumenta, ale nie mógł znaleźć tego samego komunikatu MessageAck (Openwire).
3) Czasami działa na węźle, a czasami tworzy problem na tym samym węźle.
będzie można wysłać maksymalnie config sprężyny, która pokazuje ConectionFactory, DMLC i klasę słuchacza? –
Mam dokładnie ten sam problem. Czy masz rozdzielczość? –
Dowolna aktualizacja? Mam podobny problem, – Nereis