LoginSignup
1
0

IBM MQ 学習

Last updated at Posted at 2024-02-20

はじめに

どこまで勉強するか...

参考サイト

◆【クイックスタート&チュートリアル】令和に生きるエンジニアのためのIBM MQ入門
 https://qiita.com/ogi-iii/items/dfaef30e96de7a2818ea
◆よくわかる!IBM MQのことならMQ虎の巻
 https://note.com/ibm_automatio/n/ne2282518aa69
◆実践習得 IBM MQの基本
 https://pulsarintegration.jp/MQBasic/MQBasic_index.html
◆最初のIBM MQ JMSアプリケーションの作成と実行 - IBM Developer Learning Paths 日本語サイト
 https://ibm.github.io/japan-technology/Code-Tutorials/mq-develop-mq-jms/
◆mqとは?開発に役立つ使い方、トレンド記事やtips - Qiita
 https://qiita.com/tags/mq
◆IBM MQ ライセンス情報
 https://www.ibm.com/docs/ja/ibm-mq/9.3?topic=mq-license-information

環境構築(Windows-WS2012R2)

◆Get an IBM MQ queue for development on Windows
 https://developer.ibm.com/tutorials/mq-connect-app-queue-manager-windows/


1. IBM MQダウンロード

下記でダウンロードを実施
◆IBM MQ Advanced for Developers for Windows
 https://ibm.biz/mqdevwindows
  ※【9.3.4.0-IBM-MQ-Advanced-for-Developers-Win64.zip】をダウンロード(666MB)


2. IBM MQインストール

install.bat
REM インストールコマンド ※管理者権限でコマンドプロンプトを起動し、下記をコピペして実行
start /wait msiexec /i "C:\work\9.3.4.0-IBM-MQ-Advanced-for-Developers-Win64\MQServer\MSI\IBM MQ.msi" /l*v "C:\work\install.log" /q RESPONSE="C:\work\9.3.4.0-IBM-MQ-Advanced-for-Developers-Win64\MQServer\Response.ini" TRANSFORMS="1041.mst" AGREETOLICENSE="yes" ADDLOCAL="Server"

REM 完了後、勝手に再起動コマンドが走る

REM ログイン後、install.logを見てエラーが発生していないことを確認
REM インストールが成功していると、タスクバーにIBM MQのアイコンが表示される

3. キュー・マネージャーの生成と起動

mqCreateStart.bat
cd "C:\Program Files\IBM\MQ\bin"

REM IBM MQ 環境の設定(ご使用のシステムに合わせて環境変数を設定)
setmqenv -s

REM IBM MQ のバージョンおよびビルド情報を表示
dspmqver

REM キュー・マネージャーの作成
crtmqm QM1

REM キュー・マネージャーの始動
strmqm QM1

◆IBM MQ 制御コマンド・リファレンス
 https://www.ibm.com/docs/ja/ibm-mq/9.3?topic=reference-mq-control-commands


4. キュー・マネージャーの設定

事前に下記サイトをファイルで保存(UTF-8)し、適当な場所に保存(今回はC:\work)
 https://raw.githubusercontent.com/ibm-messaging/mq-dev-samples/master/gettingStarted/mqsc/mq-dev-config.mqsc

configureqm.bat
REM テキスト・ファイル(mq-dev-config.mqsc)に含まれている一連のコマンドを実行
runmqsc QM1<"C:\work\mq-dev-config.mqsc"

5. MQ クライアント アプリケーションを実行するためのユーザーとグループを作成

createAccount.bat
REM グループ作成(mqclient)
net localgroup mqclient /add

REM ユーザー作成(app)
net user app /add Passw0rd
REM ユーザー(app)をグループ(mqclient)に割当
net localgroup mqclient app /add
REM ユーザーのパスワードを無期限にする(app)
wmic useraccount where "Name='app'" set PasswordExpires=FALSE

REM 権限の付与または取り消し
REM   キュー・マネージャー名(-m)/変更対象(-t):キューマネージャー(qmgr)/グループ名(-g)/
setmqaut -m QM1 -t qmgr -g mqclient +connect +inq

REM   キュー・マネージャー名(-m)//変更対象(-t):キュー(queue)/グループ名(-g)/
setmqaut -m QM1 -n DEV.** -t queue -g mqclient +put +get +browse +inq

◆MQ オブジェクト権限の認可 (GRTMQMAUT)
 https://www.ibm.com/docs/ja/ibm-mq/9.3?topic=reference-grtmqmaut-grant-mq-object-authority
  ※オブジェクト・タイプの各値の意味はここから


6. キューとの間でメッセージの送受信を行う

sampleExecute.bat
REM 環境変数の設定
set MQSERVER=DEV.APP.SVRCONN/TCP/localhost(1414)
set MQSAMP_USER_ID=app

REM サンプルフォルダに移動
cd C:\Program Files\IBM\MQ\tools\c\Samples\Bin64

REM キューにメッセージを送信
amqsputc DEV.QUEUE.1 QM1
Sample AMQSPUT0 start
Enter password: ********		★パスワードを入力
target queue is DEV.QUEUE.1
message 1						★入力
message 2						★入力
								★エンターキー
Sample AMQSPUT0 end

REM キューからメッセージを受信
amqsgetc DEV.QUEUE.1 QM1
Sample AMQSGET0 start
Enter password: ********		★パスワードを入力
message <message 1>
message <message 2>
no more messages
Sample AMQSGET0 end
1
0
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
1
0