Chúng tôi đang đối mặt với một vấn đề ngẫu nhiên với ActiveMQ và người tiêu dùng. Chúng tôi quan sát thấy rằng, rất ít người tiêu dùng không nhận được tin nhắn, mặc dù họ được kết nối với hàng đợi ActiveMQ. Nhưng nó hoạt động tốt sau khi người tiêu dùng khởi động lại.Người tiêu dùng không nhận được tin nhắn từ ActiveMQ
Chúng tôi có hàng đợi có tên testQueue ở phía ActiveMQ. Một người tiêu dùng đang cố gắng loại bỏ các tin nhắn từ hàng đợi này. Chúng tôi đang sử dụng DefaultMessageListenerContainer của Spring cho mục đích này. Thư đang được gửi đến nút người tiêu dùng từ ActiveMQ Broker. Từ tcpdump là tốt, nó đã được rõ ràng rằng, tin nhắn là đạt đến nút người tiêu dùng, Nhưng mã người tiêu dùng thực tế là không thể nhìn thấy tin nhắn. Nói cách khác, thông báo dường như bị kẹt trong mã người tiêu dùng ActiveMQ hoặc trong DefaultMessageListenerContainer của Spring.
Xem tham khảo hình bên dưới. để rõ ràng hơn về vấn đề này. Thông báo đạt đến nút Người tiêu dùng, nhưng nó không đạt đến “Lớp tiêu dùng thực tế”, có nghĩa là thông báo đã bị kẹt trong mã người tiêu dùng AMQ hoặc Spring DMLC.
Dưới đây là các chi tiết được chụp từ quản trị viên ActiveMQ.
Queue-Tên/Pending-tin-Count/Consumer-Count/Tin nhắn-enqueued/Tin nhắn-dequeued testQueue/9/1/9/0
Dưới đây là những chi tiết.
Connection-ID/sessionId/Selector/Enqueues/dequeues/cử đến/cử đến-Queue/Prefetch ID: bearsvir52-45176-1375519181268-3: 5/1// 9/0/9/9/250
Từ bảng thứ hai, rõ ràng là, các thông báo đang được gửi tới người tiêu dùng, nhưng người tiêu dùng không thừa nhận thông báo. Do đó các tin nhắn bị mắc kẹt trong Dispatched-Queue ở bên môi giới.
Ít điểm cho thông báo của bạn:
1) Không có chênh lệch thời gian b/w Nút môi giới và nút người tiêu dùng.
2) Quan sát tcpdump ở phía người tiêu dùng. Chúng ta có thể thấy gói tin MessageDispatch (Openwire) đang được chuyển tới nút người tiêu dùng, nhưng không thể tìm thấy MessageAck (Openwire) cho cùng một gói.
3) Đôi khi nó hoạt động trên một nút và đôi khi nó đang tạo ra sự cố trên cùng một nút.
Bạn có thể gửi lên cấu hình mùa xuân cho thấy ConectionFactory, DMLC và lớp người nghe? –
Tôi đang đối mặt với cùng một vấn đề. Bạn đã nhận được một giải pháp? –
Mọi cập nhật? Tôi gặp vấn đề tương tự – Nereis