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
パブリッククラウドもSaaSもいいとこどり!実際に使ってみた全貌と 推しポイントを紹介します!
Search
Kazuki Miura
PRO
July 09, 2024
Technology
1
250
パブリッククラウドもSaaSもいいとこどり!実際に使ってみた全貌と 推しポイントを紹介します!
https://classmethod.connpass.com/event/322687/
#cm_odyssey
Kazuki Miura
PRO
July 09, 2024
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
「入門 OpenTelemetry」 入門
miu_crescent
PRO
1
58
AZ 名とAZ ID の違いを 何度でも言うよ
miu_crescent
PRO
1
210
AWS Step Functions で マネコンとCDKの二刀流!
miu_crescent
PRO
1
54
AWS MediaServices の概要と活用事例
miu_crescent
PRO
2
97
ワイキキサークルホテルとその過ごし方
miu_crescent
PRO
1
260
私のawsの学び方、社外へ飛び出そう
miu_crescent
PRO
1
130
地方だからできた! 東北でのAWS事例を一挙紹介!
miu_crescent
PRO
1
170
地方企業がクラウドを活用するヒント
miu_crescent
PRO
1
220
AWSにおける生成AIでの動画生成について
miu_crescent
PRO
1
160
Other Decks in Technology
See All in Technology
DeNA での思い出 / Memories at DeNA
orgachem
PRO
3
1.6k
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
3
300
広島銀行におけるAWS活用の取り組みについて
masakimori
0
140
Browser
recruitengineers
PRO
4
400
あとはAIに任せて人間は自由に生きる
kentaro
3
1.1k
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.5k
認知戦の理解と、市民としての対抗策
hogehuga
0
370
第4回 関東Kaggler会 [Training LLMs with Limited VRAM]
tascj
12
1.8k
KiroでGameDay開催してみよう(準備編)
yuuuuuuu168
1
130
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
1.1k
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
0
230
JOAI発表資料 @ 関東kaggler会
joai_committee
1
350
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Mobile First: as difficult as doing things right
swwweet
223
9.9k
RailsConf 2023
tenderlove
30
1.2k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Embracing the Ebb and Flow
colly
87
4.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
For a Future-Friendly Web
brad_frost
179
9.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
480
Transcript
2024/7/9 北海道テレビ放送 三浦一樹 パブリッククラウドもSaaSもいいとこどり! 実際に使ってみた全貌と 推しポイントを紹介します!
本日の Classmethod Odyssey ONLINE
本日の Classmethod Odyssey ONLINE
Xへの投稿の際は、 ハッシュタグ #cm_odyssey でお願いいたします。 お願い 質問は zoom の 「Q&A」に!
北海道テレビ放送(株) (自称)総合職エンジニア 開発チーム キャプテン AWS Step Functions サウナ 秋田→東京→札幌 JAWS-UG
札幌 Media-JAWS 会社 ロール 好きな AWSサービス 趣味 出身地 コミュニティ AWS Community Hero 三浦一樹
今日のお話 細かい実装のお話はしません。 アーキテクチャメインで以下の視点で なんで採用したのか 開発時はどうだったのか 運用時はどうったのか 1番の推しポイント
今日お話するサービス
今日お話するサービス エンジニア5名 2019年開発スタート ↓ (Biz)DevOps チーム
ここに至る経緯は
大前提 事業部在籍の総合職の人でエンジニアしてる ビジネスオーナーは隣の部署 Linux / ネットワーク わからん トラブったとき、対応できる気がしない 自分たちでやらないことを増やす 儲かるのが存在意義
売上を増やして、経費を下げる
None
VPC LESS VPC LESS VPC LESS OS LESS OS
LESS OS LESS
VPC LESS VPC LESS VPC LESS OS LESS OS
LESS OS LESS LAMBDA LESS LAMBDA LESS LAMBDA LESS
Streams Lambda GA4 API Gateway QuickSight Dataflow アーキテクチャ全体像 AWS Cloud
Amplify Hosting Google Cloud BigQuery GCS Looker Stuido R2 CDN S3 CloudFront Amplify Backend AppSync DynamoDB Lambda Step Functions MedieConvert S3 Data Transfer Cloud Functions Spanner Momento Cache S3 EC2
ちょっと休憩
Xへの投稿の際は、 ハッシュタグ #cm_odyssey でお願いいたします。 お願い 質問は zoom の 「Q&A」に!
AWS Lambda
なんで採用したのか ロジックが動く最小要素 開発時はどうだったのか 分割しすぎると遅くなる 運用時はどうだったのか ランタイム!バージョンアップ!つらい! そして、どんどん増えていく Lambda Lambda以前だとエンジニアになれてない
AWS Step Functions
Step Functions なんで採用したのか workflow Studio 最高 開発時はどうだったのか workflow Studio 最高
運用時はどうだったのか SDKが早くて最高 実行単位でログが見えるコンソール最高 自動化が不安なときは人間系で実行したりも めざせ めざせ めざせ LAMBDA LESS LAMBDA LESS LAMBDA LESS
Step Functions 確認画面 購入完了 決済処理 5s 一番複雑な? ステートマシン
Step Functions 確認画面 購入完了 決済処理 5s 一番複雑な? ステートマシン
Step Functions 在庫確保できた 決済成功
Step Functions 在庫確保できた 決済失敗 決済成功 失敗 SNS 人が対応 SNS コンソールから
Step Functions 再起 失敗 Sagaパターンにおける 補償トランザクションの考え方 DynamoDBの 条件付き書き込みは SDKだけでは実装できない ので、Lambdaで
Step Functions DynamoDBのインポートとかにも使ったり
Step Functions DynamoDBのインポートとかにも使ったり
None
なんで採用したのか コミュニティで知った 開発時はどうだったのか ドキュメント最高。 サポート最高 運用時はどうだったのか 3Dセキュアの対応を頑張ってます (2025年3月末を目処に義務化)
None
なんで採用したのか どうでしょう新作対応 開発時はどうだったのか コンソールぽちぽち 運用時はどうだったのか サポートが最高(めちゃくちゃ丁寧) セキュリティ設定が簡単ぽちぽち
None
None
なんで採用したのか 待望のサーバレスキャッシュ 開発時はどうだったのか 単独実装は簡単 スパイク対応は要調整 運用時はどうだったのか サポートが最高(めちゃくちゃ丁寧) CloudWatchにメトリクス送れる(プラン次第)
AWS Cloud AWS Amplify AWS AppSync AWS Lambda AWS AppSync
AWS AppSync Merged API Source API Source API Query Momento Cache Amazon DynamoDB Get/Set
None
None
なんで採用したのか JavaScript だけで書けるCMSが欲しかった 開発時はどうだったのか 作るのは簡単。簡単なグラフとかもすぐ出る 運用時はどうだったのか データの2重管理ちょっと大変 CI/CDが大変で組めてない 得意な部分もあるけど、不得意な部分も…
None
None
なんで採用したのか BigQuery しか勝たん Google Analytics は結局使う(AuthIDも連携) 開発時はどうだったのか AWSのデータを連携するのはちょっと大変 運用時はどうだったのか 可視化は
Looker Studio だと力不足に... Lookerは高いので、QuickSight で一旦
困ってるもの
EpisodeGroup 1対多 1対多 AppSync ユーザ系のデータ (ログイン時) DynamoDB Program Connection ConnectionEpisode
Episode 1対多 1対1 1対1 初期ロード時に 全てのデータを Recoil に格納 DynamoDB User amplify-cli の @connectionで、 どんどん増やしちゃった 番組系のデータ Amplify Gen1 Transformer ver 1 データベースなんとかしたい
EpisodeGroup 1対多 1対多 AppSync ユーザ系のデータ (ログイン時) DynamoDB Program Connection ConnectionEpisode
Episode 1対多 1対1 1対1 初期ロード時に 全てのデータを Recoil に格納 DynamoDB User amplify-cli の @connectionで、 どんどん増やしちゃった 番組系のデータ Amplify Gen1 Transformer ver 1 データベースなんとかしたい 分析環境 マーケ環境 BigQuery S3 QuickSight データコピーして 対応してる リアルタイムつらい
次に勉強したいのは
なんで採用したいのか 今のDynamoDB の connection がひどいの でリアーキは確定 分析したいのでHTAPとか欲しい スパイクに強そう 勉強したいこと 今のシステムにSQL出てこないけど、
、 GraphQL との相性は?
Streams Lambda GA4 API Gateway QuickSight Dataflow アーキテクチャ全体像 AWS Cloud
Amplify Hosting Google Cloud BigQuery GCS Looker Stuido R2 CDN S3 CloudFront Amplify Backend AppSync DynamoDB Lambda Step Functions MedieConvert S3 Data Transfer Cloud Functions Spanner Momento Cache S3 EC2
しっかり利益出てます
None
みんな仲良し!
積極的に試してみよう 選択肢は多い方がいい awsでは大変なことも他では簡単なこともある 1つひとつの実装はそんなに辛くない APIだとおもえば全部一緒 管理するアカウントは増えちゃうけど... マケプレから買えるものも多い Developers IO にもブログ多数
でも、キャッチアップ大変
いつもお世話になってます
None
None
コミュニティで 会いましょう コミュニティで 会いましょう
None