2012-04-11 33 views
5

Điều gì thực sự xảy ra dưới mui xe khi tôi đặt một MessageListener trên đối tượng MessageConsumer xếp hàng của tôi. Liệu đối tượng MessageConsumer có thực hiện một số loại bỏ phiếu hay không, hoặc đây là một sự đẩy thực sự do máy chủ JMS thực hiện?Tin nhắn của JMS MessageConsumerCông cụ tạo đẩy hoặc kéo?

Message Service Java (Java O'Reilly Series) David A. Chappell, Richard Monson-Haefel và Mark Richards, p10 chapter1: Point-to-point

Mô hình tin nhắn point-to-point có truyền thống là một mô hình pullbased hoặc bỏ phiếu dựa trên, thông điệp được yêu cầu từ hàng đợi thay vì bị đẩy cho khách hàng tự động

http://docs.oracle.com/javaee/1.4/tutorial/doc/JMS4.html#wp79175

Khi giao thông bắt đầu, các nhà cung cấp JMS tự động các cuộc gọi t phương thức onMessage của người nghe tin nhắn của anh ta bất cứ khi nào một tin nhắn được gửi đi.

Cảm ơn, Kod

Trả lời

1

Hai không mâu thuẫn với nhau. P2P về cơ bản là dựa trên cơ sở pull, trong đó trách nhiệm của người nhận là đọc một tin nhắn khi nó được gửi bởi một nhà sản xuất. Phương thức onMessage() mà bạn đã đề cập trong báo giá thứ 2 là một cơ chế thông báo được sử dụng để bắt đầu kéo. Các biến thể này còn được gọi là chế độ đồng bộ hóa so với không đồng bộ của việc nhận tin nhắn JMS, chẳng hạn như trong this chapter in Java Tutorial.

Các vấn đề liên quan