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
1.3k
0
Share
いまからでも遅くない!システム間連携入門(メッセージキュー編)
2023年7月26日に実施したconnpassで使用した資料になります
https://ibm-developer.connpass.com/event/289055/
NoMu
July 27, 2023
More Decks by NoMu
See All by NoMu
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
350
いまからでも遅くないコンテナ座学
nomu
0
520
Rerun いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
0
230
いまからでも遅くない!コンテナでWebアプリを動かしてみよう入門(2-2)WebAPIハンズオン
nomu
0
310
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
480
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(1)Gitハンズオン
nomu
0
770
Gitハンズオン準備
nomu
0
660
いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
1
410
WebSphere_Integration_Meetup
nomu
0
67
Other Decks in Technology
See All in Technology
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
420
AIが変えた"品質の守り方"
kkakizaki
13
5.5k
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.7k
テストコードのないプロジェクトにテストを根付かせる
tttol
0
230
GitHub Copilot CLIでWebアクセシビリティを改善した話
tomokusaba
0
140
Sony_KMP_Journey_KotlinConf2026
sony
1
180
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
0
160
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
380
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
300
Fabric-cicd によるAzure DevOps デプロイ
ryomaru0825
0
170
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
350
探して_入れて_作って_使う_Agent_Skills___LT.pdf
peintangos
2
110
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
Color Theory Basics | Prateek | Gurzu
gurzu
0
320
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
300
Skip the Path - Find Your Career Trail
mkilby
1
130
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
310
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
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 タイム