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
730
いまからでも遅くない!システム間連携入門(メッセージキュー編)
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アプリを動かしてみよう入門(2-2)WebAPIハンズオン
nomu
0
150
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
240
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(1)Gitハンズオン
nomu
0
520
Gitハンズオン準備
nomu
0
440
いまからでも遅くない!デジタルレイバー超入門(座学編)
nomu
1
270
WebSphere_Integration_Meetup
nomu
0
11
ネットワーク超入門(座学編)
nomu
3
1k
データベース超入門(座学編)
nomu
1
920
Other Decks in Technology
See All in Technology
サイロ化した金融システムを、packwerk を利用して無事故でリファクタリングした話
coincheck_recruit
3
2.6k
Mackerelが取り組むオブザーバビリティ - Mackerel Tech Day
mackerelio
0
300
CyberAgent 生成AI Deep Dive with Amazon Web Services / genai-aws
cyberagentdevelopers
PRO
1
290
API開発健全性 〜 持続可能で高品質なAPIのためのアプローチ 〜
nagix
2
210
次は君だ。~Japan AWS Jr. Champions 受賞までの奇跡~
fukuchiiinu
0
210
LeSS Yoake 2024 スポンサーセッション
riki_hiraoka
0
270
バイセルにおけるAI活用の取り組みについて紹介します/Generative AI at BuySell Technologies
kyuns
1
150
インシデント対応の 実践と品質文化の醸成
____rina____
2
1.4k
AWS CDKで大量のパラメータストアを作りたい
y_kotani
1
150
リファクタリングへの耐性が高いモデルベースの統合テストの紹介 / Model-Base Integration Test for Refactoring
yuitosato
5
1.2k
入門『状態』#kaigionrails / "state" for beginners with Rails
shinkufencer
2
750
強すぎるIAMをCloudTrailを使って適正化した話
yjszk
0
230
Featured
See All Featured
Optimizing for Happiness
mojombo
376
69k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Designing Experiences People Love
moore
138
23k
How to Ace a Technical Interview
jacobian
275
23k
Testing 201, or: Great Expectations
jmmastey
38
7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Pragmatic Product Professional
lauravandoore
31
6.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
106
49k
Designing the Hi-DPI Web
ddemaree
280
34k
Being A Developer After 40
akosma
86
590k
Thoughts on Productivity
jonyablonski
67
4.3k
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 タイム