Java Message Service
メッセージングとは、疎結合分散通信形式のひとつの形式である。この文脈上での"通信"とはソフトウェアコンポーネント間のメッセージ交換である。
メッセージ指向技術は、キューのような仲介役のコンポーネントの導入によって密結合通信(TCPネットワークソケット、CORBA、RMIのような)を緩和する。このアプローチによって、ソフトウェアコンポーネントがお互いに"間接的に"通信するようになる。このメリットは、キューを使用して通信する場合に、メッセージ送信者が正確に受信者を知る必要がないということも含んでいる。
出版-購読型モデルでは、特定のメッセージトピックに対してメッセージを出版することができる。購読者は、受信対象のメッセージトピックに対して購読要求を行う。このモデルでは、出版者と購読者がお互いに知ることがない。比喩として掲示板が挙げられる。
このモデルの特徴を以下に挙げる。
複数の購読者が、メッセージを取得できる。
出版者と購読者は同時に稼働しないといけない。
出版者は、クライアントが購読可能になるためにサブスクリプションを生成しなくてはいけない。購読者は、持続的なサブスクリプションが確立されている間、継続的に受信し続ける。