Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
いまからでも遅くない!システム間連携入門(メッセージキュー編)
Search
NoMu
July 27, 2023
Technology
0
1.1k
いまからでも遅くない!システム間連携入門(メッセージキュー編)
2023年7月26日に実施したconnpassで使用した資料になります
https://ibm-developer.connpass.com/event/289055/
NoMu
July 27, 2023
Tweet
Share
More Decks by NoMu
See All by NoMu
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
270
いまからでも遅くないコンテナ座学
nomu
0
450
Rerun いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
0
190
いまからでも遅くない!コンテナでWebアプリを動かしてみよう入門(2-2)WebAPIハンズオン
nomu
0
270
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
410
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(1)Gitハンズオン
nomu
0
740
Gitハンズオン準備
nomu
0
610
いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
1
360
WebSphere_Integration_Meetup
nomu
0
49
Other Decks in Technology
See All in Technology
MCPサーバーを活用したAWSコスト管理
arie0703
0
110
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
1.5k
AIに目を奪われすぎて、周りの困っている人間が見えなくなっていませんか?
cap120
1
690
Amazon Bedrock AgentCoreのフロントエンドを探す旅 (Next.js編)
kmiya84377
1
160
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
2
540
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
210
20250807 Applied Engineer Open House
sakana_ai
PRO
2
570
[OCI Technical Deep Dive] OCIで生成AIを活用するためのソリューション解説(2025年8月5日開催)
oracle4engineer
PRO
0
120
GISエンジニアよ 現場に行け!
sudataka
1
140
生成AI活用のROI、どう測る? DMM.com 開発責任者から学ぶ「AI効果検証のノウハウ」 / ROI of AI
i35_267
3
120
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
3
110
モノレポにおけるエラー管理 ~Runbook自動生成とチームメンションの最適化
biwashi
0
300
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Adopting Sorbet at Scale
ufuk
77
9.5k
Visualization
eitanlees
146
16k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.8k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Writing Fast Ruby
sferik
628
62k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
GitHub's CSS Performance
jonrohan
1031
460k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
Tech Dojo いまからでも遅くない! システム間連携超入門 (メッセージキュー編。デモもある よ) 2023年07月26日 IBM Developer 17時3分開始予定です!
マイクをオフにして お待ちください。
2 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 自己紹介 村田 憲昭 北海道北斗市 スノーボード、登山、グルメ、猫 カスタマーサクセス DX人材育成/教育(IT全般) 社内SE(いわゆる「ひとり情シス」) 某コンビニのエンジニア 名前 生息地 趣味 経歴
[email protected]
https://www.linkedin.com/in/noriaki-murata-nmz
3 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 免責事項 本資料に含まれる情報は可能な限り正確を期しておりますが、 記載された内容に関して、日本アイ・ビー・エム株式会社が 何ら保証するものではありません。 従って、本資料の情報の利用は使用者の責任において 為されるものであり、資料の内容によって受けた 如何なる被害に関しても一切の補償をするものではありません。 アンケートのご協力宜しく御願いいたします。
4 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation メッセージキューの基本的な 概念がわかる 本Dojoのゴール
5 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 本日のアジェンダ 1 .システム間連携とは 2 .MQとは 3 .デモ 4 .まとめ
6 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは 異なるシステム間でデータを相互に共有・処理 できるようにする仕組み システムA システムB システム間 連携!
7 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携がない世界 システムA システムB それぞれが独立したシステムになっていた・・
8 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携がある世界 システムA システムB お互いに持っているデータや機能を共有
9 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは 主なシステム間連携の種類 連携の種類 概要 ファイル連携 「ファイル」を介して別々のアプリケーション間のデータのや りとりをする方式 API連携 (主にWebAPI) ソフトウェアの一部機能を、他のソフトウェアから利用できる ようにして解放して、データのやりとりをする方式 (API=Application Program Interface) WebAPIは、APIをHTTP(HyperText Transfer Protocol)通信で利用 する方式 メッセージキュー 「キュー」と呼ばれるデータ領域を介して別々のアプリケー ション間でデータのやりとりをする方式
10 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携(ファイル連携) システム A システム B (FTP等) ファイル (FTP等) ※FTP=File Transfar Protocol。ネットワーク上でファイル等を転送する通信規約のこと
11 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携(API連携) API 登録 参照 更新 システム A システム B (HTTP等) (HTTP等) リクエスト リクエスト レスポンス レスポンス
12 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携(メッセージキュー) B FIFO キュー(待ち行列) 1 2 3 4 5 システム A システム B ※FIFO= First-in First-out。最初にいれたものを最初に出すこと
13 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携(一般的なメリット/デメリット) メリット デメリット ファイル連携 ・大容量通信が可能 ・非同期処理が可能 ・ファイル生成するまで 連携はできない (ファイルの静止点) ・リアルタイムな連携は苦手 ・同期処理は苦手 API連携 ・リアルタイム連携が可能 ・同期処理が可能 ・大容量通信は苦手 ・非同期処理は苦手 メッセージキュー ・意図した順番を維持して 処理してもらえる ・非同期処理が可能 ・大容量通信は苦手 ・リアルタイムな連携は苦手 ・同期処理は苦手
14 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 本日のアジェンダ 1 .システム間連携とは 2 .MQとは 3 .デモ 4 .まとめ
15 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation MQとは B 1 2 3 4 5 システム A システム B たくさんの言語、プラットフォーム(特にメインフレーム)をサポート https://ibm.github.io/japan-technology/Code-Articles/mq-fundamentals/ チャンネル キュー メッセージ キューマネージャー
16 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation システム間連携とは システム間連携(一般的なメリット/デメリット+MQ) メリット デメリット ファイル連携 ・大容量通信可能 ・非同期処理が可能 ・ファイル生成するまで 連携はできない (ファイルの静止点) ・リアルタイムな連携は苦手 ・同期処理は苦手 API連携 ・リアルタイム連携が可能 ・同期処理が可能 ・大容量通信は苦手 ・非同期処理は苦手 メッセージキュー ・意図した順番を維持して 処理してもらえる ・非同期処理が可能 ・大容量通信は苦手 ・リアルタイムな連携は苦手 ・同期処理は苦手 MQ ・大容量通信可能 ・リアルタイム連携可能 ・意図した順番を維持して処理 苦手はない
課題・背景 • クラウドやデバイスの普及によりシステム負荷が増大 • UXの追求でより短い待ち時間が必要になる • 無停止運用(24/365)の導入 • 運用負荷の観点でサーバーの水平拡張が限界に 解決策
• IBM MQを活用した非同期連携基盤を導入 • フロントと基幹システムの間を非同期化することで 基幹システム停止中もフロントのシステムを 稼働できるように実現 効果 • 大幅なサーバー増強無しに負荷の増大に対応 • アプリケーションのUX向上 • 基幹システムの停止が可能になり運用負荷の大幅な低 減 フロント・システム 基幹システム MQによりフロントと 基幹の連携を非同期化 クラウド上の アプリケーション MQ システム間連携とは? 従来のシステム構成 フロント・システム 基幹システム ・週1回の定期保守時にシステムを 停止している ・安定稼働しているのであまり変更 したくない 非同期連携を活用したシステム
18 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 本日のアジェンダ 1 .システム間連携とは 2 .MQとは 3 .デモ 4 .まとめ
19 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation FIFO MQサーバー システム A システム B システム構成図 コンテナ 9443 ポート 9443 ポート Hello MQ!! デモ
20 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation デモ Qiitaにて手順公開中(CPUがIntel、s390x限定) https://qiita.com/nmzstation45/items/704f09aead1db3373cef
21 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation デモ ※CPUがM1、M2チップ版はこちら ⇒コンテナイメージ作成から実施する必要があります https://github.com/ibm-messaging/mq-container/blob/master/docs/building.md
22 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation デモ ・podmanコンテナを起動 ・MQ Webコンソールの確認 ・REST APIでメッセージ送信 ・MQ Webコンソールでメッセージを確認(受信確認) ・REST APIでメッセージ受信 ・MQ Webコンソールでメッセージを確認(削除) デモ手順
23 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation 本日のアジェンダ 1 .システム間連携とは 2 .MQとは 3 .デモ 4 .まとめ
24 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation メッセージキューの基本的な 概念がわかる まとめ
25 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation まとめ 以下QRコードから質問や要望などあれば。 またアンケートのご協力よろしくお願いいたします!
26 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation まとめ 1 .システム間連携とは 2 .MQとは 3 .デモ 4 .まとめ こんなサイトも参考に・・・ ▼MQ公式ドキュメント https://www.ibm.com/docs/ja/ibm-mq/9.3 ▼MQの基礎(MQ認定バッジも取得可能) https://ibm.github.io/japan-technology/Code-Articles/mq-fundamentals/
27 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation いろいろTry&Errorしながら 試してみてください。 ありがとうございました
28 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation
29 Customer Success, IBM Technology, Japan / © 2023 IBM
Corporation QA タイム