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
440
Rerun いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
0
190
いまからでも遅くない!コンテナでWebアプリを動かしてみよう入門(2-2)WebAPIハンズオン
nomu
0
260
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
410
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(1)Gitハンズオン
nomu
0
730
Gitハンズオン準備
nomu
0
600
いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
1
360
WebSphere_Integration_Meetup
nomu
0
49
Other Decks in Technology
See All in Technology
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
4
530
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7.8k
完璧を目指さない小さく始める信頼性向上
kakehashi
PRO
0
120
Datasets for Critical Operations by Dataform
kimujun
0
120
Amazon CloudWatchのメトリクスインターバルについて / Metrics interval matters
ymotongpoo
3
290
ビジネス文書に特化した基盤モデル開発 / SaaSxML_Session_2
sansan_randd
0
160
Gemini in Android Studio - Google I/O Bangkok '25
akexorcist
0
100
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
400
AIエージェントを支える設計
tkikuchi1002
11
2.4k
[TechNight #91] Oracle Database 最新パフォーマンス分析手法
oracle4engineer
PRO
3
210
From Live Coding to Vibe Coding with Firebase Studio
firebasethailand
1
320
ML Pipelineの開発と運用を OpenTelemetryで繋ぐ @ OpenTelemetry Meetup 2025-07
getty708
0
320
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The World Runs on Bad Software
bkeepers
PRO
70
11k
It's Worth the Effort
3n
185
28k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
Code Review Best Practice
trishagee
69
19k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Code Reviewing Like a Champion
maltzj
524
40k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Music & Morning Musume
bryan
46
6.7k
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 タイム