2013-12-13 13 views

Trả lời

5

Đối tượng phiên JMS thường được sử dụng cho Giao dịch. Và tất cả chúng ta đều biết rằng các giao dịch là một chủ đề cụ thể và không thể mở rộng qua các luồng. Do đó, phiên giao dịch JMS đã giao dịch không thể được sử dụng trên các luồng. Tôi tin rằng vì lý do này, đặc điểm kỹ thuật của JMS cho biết phiên không phải là chủ đề an toàn.

+1

giải thích thú vị +1 –

5

JMS 2.0 Spec

trang 25

Có hai lý do để hạn chế truy cập đồng thời tới phiên.

Trước tiên, phiên là thực thể JMS hỗ trợ giao dịch. Đó là rất khó thực hiện các giao dịch đa luồng.

Thứ hai, phiên hỗ trợ tiêu thụ tin nhắn không đồng bộ. Nó là quan trọng là JMS không yêu cầu mã máy khách được sử dụng cho không đồng bộ mức tiêu thụ thư có thể xử lý nhiều, đồng thời thư.

Bên cạnh đó, nếu một phiên đã được thiết lập với nhiều, người tiêu dùng không đồng bộ, điều quan trọng là khách hàng không được buộc để xử lý các trường hợp những người tiêu dùng riêng biệt đồng thời là thực hiện. Những hạn chế này làm cho JMS dễ sử dụng hơn cho các khách hàng điển hình của . Các khách hàng tinh vi hơn có thể nhận được đồng thời họ mong muốn bằng cách sử dụng nhiều phiên. Trong API cổ điển và các API dành riêng cho miền, điều này có nghĩa là sử dụng nhiều đối tượng phiên. Trong API đơn giản hóa , điều này có nghĩa là sử dụng nhiều đối tượng JMSContext.

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