2010-06-14 4 views
5

Tôi có một ứng dụng .NET cần giám sát một hàng đợi trong WebSphere MQ. Tôi cần phải phản ứng với từng thông điệp mà không ảnh hưởng đến quá trình hiện tại. Ứng dụng máy khách không thể giải thích gửi cho tôi cùng một thông điệp.Làm thế nào để giám sát hàng đợi hiện có từ WebSphere MQ?

Tôi có thể đọc tin nhắn mà không xóa tin nhắn đó khỏi hàng đợi không? Tôi có thể được thông báo cho mỗi tin nhắn không? Tôi có thể cấu hình MQ sao chép hàng đợi hiện tại không?

Có giải pháp nào khác không?

Trả lời

2

Nếu bạn đang sử dụng WMQ v7 thì bạn có thể thực hiện việc này mà không ảnh hưởng đến các ứng dụng hiện có khác ngoài việc thay đổi tên hàng đợi cho một trong số chúng.

Hiện tại, nhà sản xuất và người tiêu dùng tin nhắn sử dụng cùng một hàng đợi. Trong phiên bản 7 của WMQ, bạn có thể tạo bí danh trên một chủ đề để nhà sản xuất tin nhắn cho rằng đó là hàng đợi. Sau đó, bạn có thể tạo hai đăng ký quản trị, bền, sao cho một điểm đến hàng đợi đầu vào hiện tại và một điểm khác vào hàng đợi dành riêng cho ứng dụng mới của bạn.

Tất nhiên bạn đang sử dụng v7 vì v6 không hoạt động vào năm tới, phải không? Bạn có thể nâng cấp QMgr lên v7 cho phép hành vi này trong khi vẫn sử dụng mã khách hàng v6 cho các ứng dụng.

Nếu bạn đang sử dụng WMQ v6 thì MirrorQ program có thể phù hợp với bạn.

+0

Cảm ơn. Bạn đã hoàn thành câu trả lời từ gwhitake. – Jorge

2

Bạn có thể thay đổi từ việc sử dụng hàng đợi thành chủ đề bền và có cả trình đọc và trình duyệt của bạn đăng ký.

Bạn cũng có thể tạo danh sách phân phối trên trình quản lý hàng đợi của mình. Danh sách phân phối được sử dụng để gửi một bản sao của cùng một thông điệp đến nhiều hàng đợi. Sau đó, bạn sẽ có hàng đợi xử lý và hàng đợi duyệt/theo dõi.

+0

Nếu tôi chỉ duyệt thư, người nghe hiện tại có thể đọc (và xóa thư) trước khi duyệt? Tôi định sử dụng XMS. – Jorge

+0

Bạn nói đúng. Tôi đã chỉnh sửa câu trả lời của mình. – gregwhitaker