MOM là một vốn lỏng lẻo, công nghệ không đồng bộ. Điều này có nghĩa là
người gửi và người nhận một tin nhắn cũng không chặt chẽ, không giống như đồng bộ
các công nghệ trung gian như CORBA. Công nghệ middleware đồng bộ
có nhiều ưu điểm, nhưng có thể dẫn đến các thiết kế mỏng manh, nếu tất cả các thành phần và
các liên kết mạng luôn luôn phải được làm việc cùng một lúc cho toàn bộ hệ thống để
hoạt động thành công.
Một hạ tầng thư tách riêng người gửi và người nhận sử dụng một trung gian
đợi tin nhắn . Người gửi có thể gửi tin nhắn đến người nhận và biết rằng nó
sẽ được dần dần chuyển giao, thậm chí nếu liên kết mạng bị ngắt hay người nhận là không
có sẵn. Người gửi chỉ nói với các công nghệ MOM để cung cấp các tin nhắn và
sau đó tiếp tục về với công việc của mình. Người gửi không nhận thức được những ứng dụng hoặc
quá trình cuối cùng xử lý yêu cầu. Hình 4.4 mô tả này cơ bản gửi-nhận
cơ chế.
MOM thường được thực hiện như một máy chủ có thể xử lý các tin nhắn từ nhiều
clients.3 đồng thời Để tách gửi và người nhận, các MOM cung cấp
hàng đợi tin nhắn mà người gửi thông điệp ra vào và thu loại bỏ thư
từ . Một máy chủ MOM có thể tạo và quản lý nhiều tin nhắn xếp hàng, và có thể
xử lý nhiều tin nhắn được gửi từ hàng đợi đồng thời sử dụng đề
tổ chức tại một hồ bơi thread. Một hoặc nhiều tiến trình có thể gửi tin nhắn cho một tin nhắn
xếp hàng, và mỗi hàng đợi có thể có một hoặc nhiều email. Mỗi hàng đợi có một cái tên
mà người gửi và người nhận chỉ định khi thực hiện gửi và nhận các hoạt động.
Kiến trúc này được minh họa trong hình. 4.5.
Một máy chủ MOM có một số trách nhiệm cơ bản. Đầu tiên, nó phải chấp nhận
một tin nhắn từ các ứng dụng gửi, và gửi một sự thừa nhận rằng các
tin nhắn đã được nhận. Tiếp theo, nó phải đặt các thông báo ở cuối hàng đợi
đó đã được chỉ định bởi người gửi. Một người gửi có thể gửi nhiều tin nhắn đến một queuebefore bất kỳ thu loại bỏ chúng. Do đó các MOM phải được chuẩn bị để tổ chức
các tin nhắn trong một hàng đợi trong một thời gian dài của thời gian.
Tin nhắn được gửi đến người nhận trong một First-In-First-Out (FIFO) theo cách thức,
cụ thể là để họ đến hàng đợi. Khi một người nhận yêu cầu một tin nhắn,
thông điệp ở đầu hàng đợi được giao cho người nhận, và khi
nhận thành công, tin nhắn được xóa khỏi hàng đợi.
Sự không đồng bộ, chất tách rời của công nghệ nhắn tin làm cho nó trở thành một
công cụ cực kỳ hữu ích cho việc giải quyết . nhiều vấn đề thiết kế ứng dụng phổ
biến, bao gồm kịch bản, trong đó:
l Người gửi không cần trả lời một tin nhắn. Nó chỉ muốn gửi tin nhắn
đến một ứng dụng khác và tiếp tục với công việc riêng của mình. Điều này được biết đến như sendand-quên
nhắn tin.
L Người gửi không cần một câu trả lời ngay lập tức cho một tin nhắn yêu cầu. Người nhận
có thể mất có lẽ vài phút để xử lý yêu cầu và người gửi có thể được
làm công việc hữu ích trong khi chờ đợi hơn là chỉ cần chờ đợi.
L người nhận, hoặc kết nối mạng giữa người gửi và người nhận, có thể
không hoạt động liên tục. Người gửi dựa trên MOM để cung cấp tin nhắn
khi một kết nối được thiết lập tiếp theo. Lớp MOM phải có khả năng
lưu trữ tin nhắn để giao hàng sau, và có thể phục hồi các tin nhắn chưa gửi
sau khi lỗi hệ thống
đang được dịch, vui lòng đợi..