ページの先頭行へ戻る
Interstage Application Server V13.0.0 GlassFish 設計・構築・運用ガイド
FUJITSU Software

12.7 JMSの開発・運用時の異常

セージブローカのJavaヒープが不足している場合の対処

メッセージブローカを停止できない

起動しているすべてのメッセージブローカをimqcmdコマンドで停止してください。
imqcmdコマンドで停止できないメッセージブローカについては、以下の対処を行なってください。

  1. タスクマネージャのプロセス一覧からイメージ名「imqbrokersvc.exe」が存在するかどうかを確認します。

  2. イメージ名「imqbrokersvc.exe」を選択して右クリックし、「プロパティ」を選択します。全般タブの「場所」に製品をインストールしたディレクトリーが含まれていることを確認します。

  3. イメージ名「imqbrokersvc.exe」を選択して右クリックし、「プロセス ツリーの終了」を選択します。

  4. タスクマネージャの警告画面が表示されるので、「プロセス ツリーの終了」をクリックします。


  1. 当該メッセージブローカのPIDを特定します。

    1. 以下のコマンドを実行して、imqbrokerdコマンドのPIDとPPIDを取得します。

      [global zoneの場合]

      ps -efz global | grep /opt/FJSViaps/glassfish5/mq/bin/imqbrokerd | grep -v " grep "

      [non-global zoneの場合]

      ps -ef | grep /opt/FJSViaps/glassfish5/mq/bin/imqbrokerd | grep -v " grep "
    2. 上記コマンドで取得したPIDとPPIDからメッセージブローカのPIDを取得します。

      ps -e -o pid,ppid | grep $pid | grep -v -w $ppid | awk '{print $(1)}'
  2. 当該メッセージブローカプロセスを強制停止します。

    kill $メッセージブローカのpid

  1. 当該メッセージブローカのPIDを特定します。

    1. 以下のコマンドを実行して、imqbrokerdコマンドのPIDとPPIDを取得します。

      ps -ef | grep /opt/FJSViaps/glassfish5/mq/bin/imqbrokerd | grep -v " grep "
    2. 上記コマンドで取得したPIDとPPIDからメッセージブローカのPIDを取得します。

      ps -e -o pid,ppid | grep $pid | grep -v -w $ppid | awk '{print $(1)}'
  2. 当該メッセージブローカプロセスを強制停止します。

    kill $メッセージブローカのpid

セス制御ファイル(accesscontrol.properties)またはパスワードファイル(passwd)が存在しない場合の対処

アクセス制御ファイル(accesscontrol.properties)またはパスワードファイル(passwd)が存在しないために、コマンドを使用してメッセージブローカの起動または停止ができない場合は、以下の対処を行ってください。

アクセス制御ファイルが存在しない場合

以下のデフォルトのアクセス制御ファイル「accesscontrol.properties.default」を「accesscontrol.properties」として、コマンド実行時に出力されるエラー情報に記載されたアクセス制御ファイルのパスにコピーしてください。

デフォルトのアクセス制御ファイル格納先
C:\Interstage\glassfish5\mq\etc\accesscontrol.properties.default
/opt/FJSViaps/glassfish5/mq/etc/accesscontrol.properties.default

パスワードファイルが存在しない場合

以下のデフォルトのパスワードファイル「passwd.default」を「passwd」として、コマンド実行時に出力されるエラー情報に記載されたパスワードファイルのパスにコピーしてください。

デフォルトのパスワードファイル格納先
C:\Interstage\glassfish5\mq\etc\passwd.default
/opt/FJSViaps/glassfish5/mq/etc/passwd.default

ポイント

  • imqcmdコマンドでメッセージブローカを停止する場合は、デフォルトユーザーとデフォルトパスワードを指定して実行してください。


  • コピー先のファイルの権限を「root/root  0644」に変更してください。

注意

本操作後は、メッセージブローカのユーザー設定が初期化されます。「5.9 JMSのセキュリティ機能」に記述されている設定を再度実行してから、メッセージブローカを起動してください。


JMS送信先リソースにQueueを使用するMessage-driven Beanを配備した場合、Topicの物理格納先に接続される

以下の可能性があります。

上記対応後、Message-driven Beanを再配備し、必要に応じてTopicの物理格納先を削除してください。


Windowsサービスから「Interstage Message Queue Broker(glassfish5)」の停止ができない

imqcmd shutdown bkrサブコマンドに、停止したいメッセージブローカのポート番号を指定して、メッセージブローカを停止してください。

なお、サービスプロセスが多く存在することにより、デスクトップヒープが枯渇している可能性があります。デスクトップヒープの枯渇については、「トラブルシューティング集」の「Interstage運用時の異常」-「デスクトップヒープが枯渇した場合」を参照してください。