Làm thế nào để có được độ dài hàng đợi (số lượng thư chưa gửi được gửi đến hàng đợi) trong ActiveMQ, sử dụng Java?Bất kỳ cách đơn giản nào để có được độ dài hàng đợi của ActiveMQ?
Trả lời
Bạn phải sử dụng JMX, vì giao diện Hàng đợi không cung cấp thông tin như vậy.
Ví dụ về lấy kích thước của một hàng đợi cụ thể:
// connection
String url = "service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi";
JMXConnector connector = JMXConnectorFactory.connect(new JMXServiceURL(url));
MBeanServerConnection connection = connector.getMBeanServerConnection();
// get queue size
ObjectName nameConsumers = new ObjectName("org.apache.activemq:type=Broker,brokerName=localhost,destinationType=Queue,destinationName=myqueue");
DestinationViewMBean mbView = MBeanServerInvocationHandler.newProxyInstance(connection, nameConsumers, DestinationViewMBean.class, true);
long queueSize = mbView.getQueueSize();
tham khảo: ActiveMQ JMX, Required MBeans
Cảm ơn gợi ý, nhưng tôi đã sử dụng ObjectName tiếp theo: "org.apache.activemq: BrokerName = localhost, Type = Queue, Destination = queueName "và QueueViewMBean lớp để có được queueViewMBean. Nói chung - phương pháp tiếp cận là cùng một –
Như thế này;
QueueBrowser browser = session.createBrowser(queue);
Enumeration enu = browser.getEnumeration();
List list = new ArrayList();
while (enu.hasMoreElements()) {
TextMessage message = (TextMessage) enu.nextElement();
list.add(message.getText());
}
System.out.println("Size " + list.size());
NB rằng trừ khi bạn tăng maxPageSize và memoryLimit nó sẽ chỉ duyệt bạn tại hầu hết 400 tin nhắn: http://betterlogic.com/roger/2012/06/activemq-browse-all-messages – rogerdpack
Bạn sẽ đọc tất cả các thông điệp môi giới tại người tiêu dùng chỉ cần đếm nó, thực sự? – deFreitas
- 1. Cách thiết lập Giám sát hàng đợi trong activemq
- 2. Hàng đợi công việc/tin nhắn có thể mở rộng đơn giản với độ trễ
- 3. Bất kỳ biểu thức boolean đơn giản nào không?
- 4. Hàng đợi không phải tin nhắn/Đơn giản bỏ phiếu dài bằng Python (và Flask)
- 5. Độ dài hàng đợi đĩa trên Mac OSX
- 6. Bất lợi của hàng đợi tròn?
- 7. Thực hiện một hàng đợi đơn giản sử dụng mảng
- 8. Bất kỳ cách nào để cải thiện tốc độ bitmapFactory.decodeStream()?
- 9. Làm cách nào để có được kinh độ và vĩ độ của bất kỳ địa chỉ nào?
- 10. Bất kỳ công cụ nào để tự động sửa các vấn đề JSLint đơn giản?
- 11. Có cách nào đơn giản để có được kích thước của một đối tượng java không?
- 12. IDataReader - Bất kỳ cách nào để nhận tổng số hàng?
- 13. Regex đơn giản, khớp với bất kỳ chuỗi nào có ít nhất một dấu gạch ngang
- 14. Cách lặp qua tên đường dẫn dài với bất kỳ hình thức nào của API Windows
- 15. Có bất kỳ giới hạn độ dài đường dẫn tệp nào trong NTFS không?
- 16. Làm thế nào để xóa các sự kiện khỏi hàng đợi SQS (Hàng đợi Đơn giản) của Amazon thực sự nhanh chóng?
- 17. Symfony2: Cách đơn giản nhất để có được url RESTful
- 18. là bất kỳ dự án web đơn giản sử dụng cassandra và php có sẵn?
- 19. có độ dài của hàng/cột trong C#
- 20. Nhấp vào bất kỳ nơi nào trên hàng GridView để vào chế độ chỉnh sửa
- 21. Làm cách nào để kiểm soát tốc độ mà Spring nhận được từ hàng đợi?
- 22. TStringGrid - có cách đơn giản để nhận hàng "hiện tại/đã chọn" không?
- 23. là có bất kỳ sự kiện hoặc gọi lại trên MSMQ cho thư mới được thêm vào hàng đợi
- 24. Làm thế nào để thêm hai số của bất kỳ chiều dài trong java?
- 25. Làm cách nào để báo cáo độ dài hàng đợi sự kiện AWT/Swing theo lập trình?
- 26. Làm cách nào để hiển thị độ dài hàng đợi IO trên đĩa hiện tại trên Linux?
- 27. javascript đơn giản không hoạt động trong bất kỳ trình duyệt IE nào?
- 28. Đơn giản hóa một biểu thức rất dài bằng cách tự động giới thiệu các biến thời gian hoặc theo bất kỳ cách nào khác
- 29. Làm cách nào để có được độ dài của nội dung của JTextField khi người dùng nhập?
- 30. Có cách nào đơn giản để thay thế văn bản tệp hàng loạt tại chỗ không?
Bạn phải sử dụng JMX, vì giao diện Hàng đợi không cung cấp thông tin như vậy. Tham khảo: [ActiveMQ JMX] (http://activemq.apache.org/jmx.html), [MB cần thiết] (http://activemq.apache.org/jmx-support.html) Ví dụ: [quản lý ActiveMQ với JMX API] (http://www.consulting-notes.com/2010/08/monitoring-and-managing-activemq-with.html) – Dag