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
Cloud Pub/Sub Pull Subscriberの構成検討
Search
atsu.kg
October 19, 2023
Technology
0
130
Cloud Pub/Sub Pull Subscriberの構成検討
atsu.kg
October 19, 2023
Tweet
Share
More Decks by atsu.kg
See All by atsu.kg
OpenTelemetry PHPで始める!オブザーバビリティ入門
atsushikoga
0
350
GCPを使った transaction log tailing と polling publisher の性能比較
atsushikoga
0
140
巨大なモノリスの静的解析をレベルMaxにする方法
atsushikoga
0
3.1k
Lenet の開発環境の紹介
atsushikoga
0
820
Other Decks in Technology
See All in Technology
AIアシスタントの活用で品質の向上と開発ワークフローのスピードアップ
nagix
1
210
Android研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
100
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
ギークの理想が7つ集まるエムスリーで夢を叶えよう - エムスリー株式会社
m3_engineering
1
260
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
160
スレットハンティングについて知っておきたいこと
hacket
0
130
年間一億円削減した時系列データベースのアーキテクチャ改善~不確実性の高いプロジェクトへの挑戦~
lycorptech_jp
PRO
3
2.9k
テスト・設計研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
コンテナ・K8s研修 - 後半 Kubernetes 基礎&ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
1
120
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
720
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
20
1.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
The Mythical Team-Month
searls
217
43k
Building an army of robots
kneath
301
42k
Mobile First: as difficult as doing things right
swwweet
219
8.8k
Designing the Hi-DPI Web
ddemaree
276
34k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Design by the Numbers
sachag
277
18k
Automating Front-end Workflow
addyosmani
1362
200k
Music & Morning Musume
bryan
43
5.9k
Transcript
Cloud Pub/Sub Pull Subscriberの構成検討 株式会社ホワイトプラス 古賀 敦士
フルマネージドのリアルタイムメッセージングサービス メッセージを生成するサービスと、処理するサービスを非同期的に切り離す 2 Cloud Pub/Sub とは
3 Push型/Pull型
4 Push Subscription Pub/SubサーバーがSubscriberにメッセージをHTTPSリクエストとして送信 処理完了したら成功のステータスコードを返すことで確認応答 秒間メッセージ数が多い場合はPull Subscriptionを推奨 ← バッチによる急増を懸念
5 Pull Subscription SubscriberはPub/Subサーバーに対してメッセージをリクエストする 処理完了したら確認応答リクエストを送信する バッチ型と常駐型の2つの実装方法が考えられる
6 サブスクライバをバッチにし定期的に処理する ・メリット 常駐型よりもリソース効率が良い ・デメリット メッセージパブリッシュから処理完了までが 常駐方式よりも長い ← 懸念 バッチ型
7 サブスクライバを常に稼働させてポーリングする ・メリット メッセージパブリッシュから処理完了までが短い ・デメリット 未処理のメッセージがない状態ではリソース効率が悪い 常駐型
8 Google Cloud 製品の検討
9 常駐型またはバッチ型が実装可能か オートスケールされるか の観点で調査
10 Cloud Run(Service) 常駐方式:◯ or △ - always on CPU
を使って可能 - リクエストを受信しないためオートスケールされない可能性あり? バッチ方式:◯ - 外部からの定期的なリクエストをトリガーにPullすることで可能 - オートスケール可能
常駐方式:△ - タスクのタイムアウト・試行回数制限があり、それを超えると失敗扱いになる - スケジュール実行するが実行時間が実行間隔を埋めることで、常駐方式と同様になる - ex. 実行時間1h・タイムアウト1h10minのタスクを1h間隔で実行する - 事前に並列処理数を設定できるが、処理状況に応じたオートスケールは無し
バッチ方式:△ - スケジュール実行することで可能 - 事前に並列処理数を設定できるが、処理状況に応じたオートスケールは無し 11 Cloud Run(Job)
常駐方式:◦ - タスクのタイムアウト・試行回数制限があり、それを超えると失敗扱いになる - スケジュール実行するが実行時間が実行間隔を埋めることで、常駐方式と同様になる - オートスケール可能 バッチ方式:◯ - スケジュール実行することで可能
- オートスケール可能 12 Cloud Batch
常駐方式:△ - フレキシブル環境ならば常時実行可能かも - リクエストが無ければオートスケールされないかも バッチ方式:◯ - スケジュール実行することで可能 - リクエストが無ければオートスケールされないかも
13 App Engine
常駐方式:◯ or △ - 可能そう - オートスケール可能 バッチ方式:◯ or △
- 可能かも - オートスケール可能 14 Compute Engine(MIG)
15 Discussion Time - Push Subscription での実装可能性 - Pull Subscriber
の常駐型とバッチ型の良し悪し - 常駐型に向いてそうな Google Cloud 製品 - 記載の内容とは別にこういう考え方がある などなど、ご意見・ご感想をいただけると幸いです。