CookBook

IM-Notice Broker の設定方法

投稿日:

この CookBook では、分散環境での IM-Notice (デスクトップ版)の設定方法について紹介しています。

分散環境の構成として、以下のような 2 台構を考えます。

マシン IPアドレス
AP1 192.168.0.1
AP2 192.168.0.2

この時、以下のように設定してしまうと、

im-notice-mq-config.xml


上図のように、IM-Notice(デスクトップ版)が 192.168.0.1:40608 にのみ接続するようになってしまい、192.168.0.2:40608 には接続していないため、192.168.0.2(AP2) で発生したメッセージ送信処理がデスクトップ通知されない、という状態が発生します。

次に、以下のような 2 台 AP サーバ + Load Balancer 構成の分散環境を考えます。

マシン IPアドレス
AP1 192.168.0.1
AP2 192.168.0.2
LB 192.168.0.3

この時、以下のように設定したとします。

im-notice-mq-config.xml


上図のように、LB によって 192.168.0.1 にのみ接続する、もしくは、192.168.0.2 にのみ接続する、という状況にしかなりません。

以上をまとめると、AP サーバを複数台で運用している場合、デスクトップ通知の通知機能(通知履歴ではなく、ポップアップ表示される通知機能)を利用するには、IM-Notice Broker の導入が必須です。

IM-Notice Broker は、下図のように、複数台の AP サーバのコネクションを一つにまとめる機能を提供します。

これにより、分散環境でも通知機能を利用できるようになります。

Broker を利用した場合の設定を以下で紹介します。
次のような分散環境を考えます。

マシン IPアドレス
AP1 192.168.0.1
AP2 192.168.0.2
Broker 192.168.0.3

AP1/AP2 共に、以下のように設定します。

im-notice-mq-config.xml

bind="false" に変更しているのがポイントで、これにより、AP サーバはポートを Open しなくなります。
代わりに、tcp://192.168.0.3:40609 (Broker のバックエンド)に対してデータを送信します。

endpoint に tcp://192.168.0.3:40608 (Broker のフロントエンド)を指定することで、IM-Notice(デスクトップ版)は tcp://192.168.0.3:40608 に接続し、通知データの受信を待機します。

ブローカーの im-notice-mq-broker-config.xml はデフォルトで問題ありません。

im-notice-mq-broker-config.xml

このように、AP サーバを複数台で運用している場合、IM-Notice(デスクトップ版)の通知機能(ダイアログやバルーンで表示される通知機能)を利用するためには、IM-Notice Broker の利用が必須です。
設定方法は本記事の例を参考にしてください。

-CookBook

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

imuiTreeでドラッグ&ドロップのバリデーションを実装する方法

このCookBookでは、imuiTree (ツリービュー) のドラッグ&ドロップバリデーションについて紹介しています。 intra-mart Accel Platform では、画面上にツリーを表示 …

IM-BloomMaker ボタンに効果音を付ける方法

このCookBookでは、2022 Spring でリリースした「音声または動画○を再生する」アクションアイテムの利用方法について説明します。「音声または動画○を再生する」 アクションアイテムは、指定 …

no image

ViewCreatorでカレントの組織コードや会社コードを取得する動的パラメータの作り方

このCookBookでは、カレントの組織コードや会社コードを取得するViewCreatorの動的パラメータの作成方法についてご紹介します。 動的パラメータについての詳細は下記のドキュメントを参照してく …

SQLビルダを利用したクエリ作成例

この CookBook では、 intra-mart Accel Platform 2020 Spring から利用可能になった、ViewCreator の「SQLビルダ」機能を活用し、既存のクエリ編 …

no image

Web サーバで Cookie に SameSite=None; Secure 属性を追加する方法

ブラウザの仕様変更により、クロスドメインアクセスにおける Cookie の扱いに変更がありました。 Google Chrome では バージョン 80 以降、SameSite 属性が宣言されていない …