0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MQの基礎の基礎

Last updated at Posted at 2021-12-03

IBMのMQのPDFの内容。

以下のような構成要素が必要になります。
送信側
宛先となるリモート・キュー(送信側のデータを宛先)名前:Q1
※キューマネジャ名:QM_ORANGE

送信側と受信側
●メッセージの通り道である、チャネル 名前:QM_ORANGE.QM_APPLE

送信側
●トランスミッション・キュー(送信側のキュー):QM_APPLE
※usage (xmitq)をつけて、ローカルキューとして作成する。

受信側
●リモート・キュー定義(送信側から見た受信側のキュー) 名前:Q1
※キューマネジャ名:QM_ORANGE
/opt/mqm/samp/bin/amqsputは

まず、宛先となるリモート・キュー(送信側のデータを宛先)にデータを送る。

チャネルは
、2つのキュー・マネージャーそれぞれでは
必ず同じ名前で
「送信チャネル- 受信チャネル」というペア
を作成することになります。この時、送信側と受信側の両方で、メッセージ・チャネル・
エージェント(MCAと呼ばれています)と呼ばれるプロセスが起動して、メッセージ転送や
エラー発生時のメッセージ再送や再接続などの各種の制御を行います。

チャネルは、senderからの起動はできる。receiverからの起動は不可。

Sender側からチャネルの停止を行うと、両側のチャネルが停止し、メッセー
ジの転送が終了します.

  • 再度チャネルを開始するときには、Sender側からチャネルの始動を
    行います.
  • 一方Receiver側でチャネルの停止を行うと、自分のチャネルだけが終了す
    るだけで、Sender側は終了しません.
  • 再度チャネルを開始するときには、Receiver側も始動する必要があり
    ます.

※senderから停止したほうがいいと思う。わかりやすいし。
※間違えてReceiverから実施した場合は、どうしたらいいんだろう。。

追加

### キューマネジャーを作成します

-bash-4.2$ /opt/mqm/bin/crtmqm YYY
この IBM MQ のコピーの残りの試行期間は 89 日です。
IBM MQ キュー・マネージャーが作成されました。
ディレクトリー '/var/mqm/qmgrs/YYY' が作成されました。
キュー・マネージャーはインストール済み環境 'Installation1' に関連付けられています。
キュー・マネージャー 'YYY' のデフォルト・オブジェクトを作成または置換しています。
デフォルト・オブジェクトの統計 : 作成 84、置換 0、失敗 0
設定を完了中です。
設定が完了しました。
-bash-4.2$

### キューマネジャーを起動します

-bash-4.2$ /opt/mqm/bin/strmqm YYY
この IBM MQ のコピーの残りの試行期間は 89 日です。
システム・リソース RLIMIT_NOFILE が、IBM MQ には異常に低いレベルに設定されています。
IBM MQ キュー・マネージャー 'YYY' を開始しています。
キュー・マネージャーはインストール済み環境 'Installation1' に関連付けられています。
ログのやり直しフェーズ中に、キュー・マネージャー 'YYY' で 5 ログ・レコード がアクセスされました。
キュー・マネージャー 'YYY' のログのやり直しが完了しました。
キュー・マネージャー 'YYY' のトランザクション・マネージャーの状態が 回復されました。
IBM MQ キュー・マネージャー 'YYY' が V9.1.0.0
を使用して開始されました。
-bash-4.2$

### 起動したキューマネジャー内でキューを作成します

-bash-4.2$ /opt/mqm/bin/runmqs
runmqsc   runmqsfb
-bash-4.2$ /opt/mqm/bin/runmqsc YYY
5724-H72 (C) Copyright IBM Corp. 1994, 2018.
キュー・マネージャー YYY に対して MQSC を始動中です。



       :
define qlocal(AAA) ##キューを作成するコマンド
     1 : define qlocal(AAA)
AMQ8006I: IBM MQ キューが作成されました。

       :
dis q(AAA) ##作成したキューを確認するコマンド
     2 : dis q(AAA)
AMQ8409I: キューの内容を表示します。
   QUEUE(AAA)                              TYPE(QLOCAL)
   ACCTQ(QMGR)                             ALTDATE(2024-03-06)
   ALTTIME(23.16.06)                       BOQNAME( )
   BOTHRESH(0)                             CLUSNL( )
   CLUSTER( )                              CLCHNAME( )
   CLWLPRTY(0)                             CLWLRANK(0)
   CLWLUSEQ(QMGR)                          CRDATE(2024-03-06)
   CRTIME(23.16.06)                        CURDEPTH(0)
   CUSTOM( )                               DEFBIND(OPEN)
   DEFPRTY(0)                              DEFPSIST(NO)
   DEFPRESP(SYNC)                          DEFREADA(NO)
   DEFSOPT(SHARED)                         DEFTYPE(PREDEFINED)
   DESCR( )                                DISTL(NO)
   GET(ENABLED)                            HARDENBO
   IMGRCOVQ(QMGR)                          INITQ( )
   IPPROCS(0)                              MAXDEPTH(5000)
   MAXMSGL(4194304)                        MONQ(QMGR)
   MSGDLVSQ(PRIORITY)                      NOTRIGGER
   NPMCLASS(NORMAL)                        OPPROCS(0)
   PROCESS( )                              PUT(ENABLED)
   PROPCTL(COMPAT)                         QDEPTHHI(80)
   QDEPTHLO(20)                            QDPHIEV(DISABLED)
   QDPLOEV(DISABLED)                       QDPMAXEV(ENABLED)
   QSVCIEV(NONE)                           QSVCINT(999999999)
   RETINTVL(999999999)                     SCOPE(QMGR)
   SHARE                                   STATQ(QMGR)
   TRIGDATA( )                             TRIGDPTH(1)
   TRIGMPRI(0)                             TRIGTYPE(FIRST)
   USAGE(NORMAL)

end ##runmqscを終了するコマンド
     3 : end
2 MQSC コマンドが読み取られました。
構文エラーがあるコマンドはありません。
有効な MQSC コマンドはすべて処理されました。
-bash-4.2$
   

-bash-4.2$ ./amqsput AAA YYY   ## AAAがキュー名 YYY がキューマネジャー名
Sample AMQSPUT0 start
target queue is AAA
TEST ##最後にENTERを2度

Sample AMQSPUT0 end
-bash-4.2$
-bash-4.2$
-bash-4.2$
##getでメッセージが確認できるかどうか
-bash-4.2$ ./amqsget AAA YYY
Sample AMQSGET0 start
message <TEST>


^C
-bash-4.2$

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?