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
Postman Tokyo Meetup - Serverless Integration w...
Search
bohnen
February 25, 2024
Technology
2
170
Postman Tokyo Meetup - Serverless Integration with Flows
bohnen
February 25, 2024
Tweet
Share
More Decks by bohnen
See All by bohnen
Momento会 #9 TiDB ServerlessとMomentoの話
bohnen
0
52
Cloud on the beach - いろいろな雲のかたち
bohnen
1
58
TiUG #1 TiDB overview and update
bohnen
0
190
みんなのPython勉強会: 最近のDB事情 TiDB Serverlessの紹介
bohnen
1
600
Serverless Meetup Re:boot 福岡 TiDB Serverlessの紹介
bohnen
1
130
Serverless Meetup Fukuoka Workshop TiDB
bohnen
0
53
TiUG #0 発表資料: TiDBの紹介と最新情報
bohnen
0
240
Momento会 #8 Serverless with TiDB/Momento/Postman
bohnen
0
62
Momento Topics使ってみた
bohnen
0
150
Other Decks in Technology
See All in Technology
Bring Your Own Container: When Containers Turn the Key to EDR Bypass/byoc-avtokyo2024
tkmru
0
860
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
54k
20250116_JAWS_Osaka
takuyay0ne
2
200
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
2025年の挑戦 コーポレートエンジニアの技術広報/techpr5
nishiuma
0
140
ABWGのRe:Cap!
hm5ug
1
120
データ基盤におけるIaCの重要性とその運用
mtpooh
4
530
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
1
16k
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
Building Scalable Backend Services with Firebase
wisdommatt
0
110
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
Evolving Architecture
rainerhahnekamp
3
260
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Documentation Writing (for coders)
carmenintech
67
4.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Faster Mobile Websites
deanohume
305
30k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
GitHub's CSS Performance
jonrohan
1030
460k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
Automating Front-end Workflow
addyosmani
1366
200k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Optimizing for Happiness
mojombo
376
70k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Transcript
Postman Flowsで お⼿軽サーバレスサービス連携 PingCAP Developer Advocate 関⼝匡稔 @bohnen
関⼝匡稔 @bohnen PingCAP株式会社 Developer Advocate (⾒習い) Solution Architect (本業)
会社紹介 Our Mission エンジニアのみなさまへの価値提供によって ビジネスのスケール、スピード、アジリティに貢 献します NewSQL + HTAP MySQL互換の分散型SQLデータベース
グローバル 以上で採⽤ 3,000社
Postman Flows 複数のサービスを連携させ、 処理を実⾏させるノーコード ツール • 簡単なVisual Scripting • ループもできる処理構⽂
• XML/JSONを⾃動パース • Webhookとして公開できる
Postman Flowsのユースケース 本命の使い⽅ • ビジネスプロセス実⾏ • サービス連携 シェルのような感覚 • 汎⽤Decorator
• バックエンドのサービ ス連携のプロトタイプ • 簡単な動作確認 • etc. 今回はコレ。便利です。 APIを介してLLMと接続 GPTsライクな処理も⾏けそ う サービス連携 プロトタイプ Visual LangChain
TiDB ServerlessのData API TiDB ① テーブル定義 ② API⽣成 ③ Postman連携
ChatGPTにお任せ 単純CRUDなら全⾃動 URLをimportするだけ
実装タイム!
サービス連携の例 〜 Momento Exchange Rate Publisher Order Executor (本来は)LPの価格に利益を乗せて顧客に提供する 価格はtopicsを使ってリアルタイ
ムに同報通信 注文はRESTエンドポイントを呼び 出し 注文が実勢価格よりも一定以上 乖離しているとnothing(失効) 実際はLPに投げる LP(Liquidity Provider) 業者向けに価格を提供して、 その値段で注文を受け付け る業者 金融機関や取引所など ここの部分を追加 https://speakerdeck.com/bohnen/postman
ギャップを埋める TiDB Postman Momento REST API (API Key) • Basic/Digest認証
• パラメーター設定は SQL に合わせて Postman Flows • 認証の設定 • Webhookの生成 • データの詰め替え Pub/Sub + Webhook • 認証なし • 来たメッセージをPOSTの Bodyに突っ込む • なぜかapplication/jsonで はなくtextで入ってくる
Postman Flows での開発 ① API変数設定 ② Flows作成 ③ テスト 認証トークン設定
ポチポチ ログを⾒ながら Postman
認証 Env Varとし て設定済み データ詰め替え FQLの関数を利 用。AI支援もある Webhook Flowsはwebhookと して公開できる
例その2 〜 新刊情報をDBに保存 IT系出版社の直近一ヶ月の新刊情 報を取得 タイトル、著者、出版社、その 他まるっとJSON保存 OpenSearch APIを利用 レスポンスはRSS2.0
(XML) 属性が任意で扱いが 面倒
テーブル定義とPOST API TiDB URLは https://ndlsearch.ndl.go.jp/books/R100000002-I033282127 のような形で書誌IDが含まれている
国会図書館サーチ APIの呼び出し 取得件数分 ループ POST Bodyの 作成 TiDB APIコール
まとめ 〜 Flowsのメリット • Postmanに統合されているのでAPIのデバッグが楽 ◦ API機能の⽅でAPIの呼び出しエラーを修正できる • データの取り回しが⾮常に楽 ◦
XML/JSON関係無いのは良い • 実際のデータに基づいてselect書けるのは良い ◦ データの結果が出⼒ノードで確認できる • FQLが強⼒ ◦ jqっぽい
THANK YOU. https://pingcap.co.jp/tidb-cloud/ 是非試してみてください!