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 Run に憧れて Google Cloud を推進している話 / CX事業本部で使...
Search
Takaaki Tanaka
June 16, 2023
Technology
0
230
Cloud Run に憧れて Google Cloud を推進している話 / CX事業本部で使われている技術
【6/16(金)沖縄】クラスメソッドの最新開発ノウハウを学ぶ勉強会 エンジニア編 で発表した資料です。
https://connpass.com/event/286059
Takaaki Tanaka
June 16, 2023
Tweet
Share
More Decks by Takaaki Tanaka
See All by Takaaki Tanaka
AWS re:Invent 2024 ふりかえり
kongmingstrap
0
170
製造の課題に立ち向かう Manufacturing Data Engine と Manufacturing Connect の ご紹介
kongmingstrap
0
700
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
640
JAWS-UG 福岡 #16 re:Invent 現地に行った人のお話 #jawsugfuk #jawsug
kongmingstrap
0
520
AppMod の開発のイマを知るために現地に潜入した私が見たものは・・・? #GoogleCloudNext
kongmingstrap
0
570
Kong Gateway から読みとく、 API統合・API連携サービスの最新情報 #devio2023
kongmingstrap
0
1.6k
AWS / Google Cloud / Azure それぞれの推しサービス.pdf
kongmingstrap
0
1.4k
CPUブーストの話
kongmingstrap
0
70
私のAWS愛を聞け! ~ここが好きだよStep Functions~ #devio2022
kongmingstrap
0
1.1k
Other Decks in Technology
See All in Technology
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
240
生成AIのビジネス活用
seosoft
0
110
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
55k
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
2
500
商品レコメンドでのexplicit negative feedbackの活用
alpicola
2
370
実践! ソフトウェアエンジニアリングの価値の計測 ── Effort、Output、Outcome、Impact
nomuson
0
2.1k
20250116_自部署内でAmazon Nova体験会をやってみた話
riz3f7
1
100
完全自律型AIエージェントとAgentic Workflow〜ワークフロー構築という現実解
pharma_x_tech
0
350
When Windows Meets Kubernetes…
pichuang
0
310
ゼロからわかる!!AWSの構成図を書いてみようワークショップ 問題&解答解説 #デッカイギ #羽田デッカイギおつ
_mossann_t
0
1.5k
【NGK2025S】動物園(PINTO_model_zoo)に遊びに行こう
kazuhitotakahashi
0
250
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Building Adaptive Systems
keathley
38
2.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Mobile First: as difficult as doing things right
swwweet
222
9k
Optimizing for Happiness
mojombo
376
70k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
RailsConf 2023
tenderlove
29
970
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
Cloud Run に憧れて Google Cloud を推進している話 2023/6/16 CX事業本部Delivery部サーバーサイドチーム 田中孝明
2 • CX事業本部 Delivery部 サーバーサイドチーム・チームマネージャー • 福岡オフィス所属 • 2023 Japan
AWS All AWS Certifications Engineers • 2022 APN ALL AWS Certifications Engineer • 2021 APN AWS Top Engineer • Google Cloud Partner Top Engineer 2023 • サウナ・スパ プロフェッショナル 田中 孝明 (Takaaki TANAKA) こーめい
3 注意事項 前提 • CX事業本部は AWS を主軸に使う方針です • マルチクラウドを推奨する内容ではないです •
個人の見解です • 実運用していないものが含まれています
4 この登壇に関するモチベーション https://cloud.google.com/blog/topics/hybrid-cloud/the-career-benef its-of-multicloud-fluency?hl=en
5 複数のクラウドでスキルを構築するケース 他のクラウドを学ぶモチベーション • クラウドの共通言語を学ぶことで、他のクラウドを学ぶときの学 習時間を短縮する • プライマリクラウドを深く掘り下げた上で、セカンダリクラウドを学 ぶ •
裏側の技術を学ぶのが面白い
6 Google Cloud を学ぶモチベーション 裏側を支える技術が面白い • Borg: クラスタマネージャ • Maglev:
ロードバランサー • Slicer: オートスケール • Jupiter: データセンターのネットワーク • GFS: クラスタレベルのファイルシステム
7 ソリューションデザインパターン これの時はこう • ユースケースごとに、よく 使われるアーキテクチャ が取り上げられている • SAP /
医療 / ゲーム(FPS / MMO) https://www.gc-solution-design-pattern.jp/
8 二刀流エンジニアを目指す方向けの資料 二刀流エンジニア • 他のクラウド (AWS / Azure) との 違いが赤裸々に公開されている
• インフラ編・データベース編は必 見 https://cloudonair.withgoogle.com/events/jump-start-22/resources
9 Google Cloud Partner Top Engineer について https://cloud.google.com/blog/ja/topics/partners/partner-top-engineer-2023-award-winners
10 Google Cloud Partner Top Engineer を目指そう https://cloud.google.com/blog/ja/topics/partners/partner-top-engineer-2023-award-winners ※来年もあるかはわからないので 注意
11 話す内容 話す内容 • Cloud Run について • 第 2
世代について • CPU ブーストについて • Google Cloud の社内事情(オフレコ)
12 Cloud Run について
13 Cloud Run の概要 サーバーレスコンテナ実行環境 • コンテナを秒単位でデプロイできるフルマネージド のサーバーレスコンピューティングプラットフォー ム •
HTTPリクエストを受け取るとコンテナを起動して実 行し、リクエストが完了するとコンテナを停止する (起動数の設定による) • Cloud Functions のバックエンドにも採用されてい る
14 Cloud Run の事例 https://classmethod.jp/cases/zenn/
15 Cloud Run の事例 https://classmethod.jp/cases/zenn/
16 Zenn の Google Cloud Japan ブログ https://zenn.dev/p/google_cloud_jp
17 Cloud Run はどうやって使うの 簡単にデプロイ • Github と Cloud Build
を連携し、コンテナ イメージをビルド • ビルドしたコンテナイメージを Artifact Registry に配置 • コンテナイメージを指定してデプロイ
18 Cloud Run はどうやって使うの 簡単にデプロイ • Github と Cloud Build
を連携し、コンテナ イメージをビルド • ビルドしたコンテナイメージを Artifact Registry に配置 • コンテナイメージを指定してデプロイ
19 Cloud Run はどうやって使うの 簡単にデプロイ
20 Cloud Run のオプション 柔軟なオプション • 最小インスタンス数を調整することで、必要なと きに起動、スケールさせるような設定が柔軟にで きる •
AlwaysCPU などで常にCPUを割り当てることで、 起動時間を改善する
21 第 2 世代 について
22 Cloud Run 第 2 世代 Linux の完全互換性を実現 • ついにGA
• さまざまなパフォーマンス改善(CPU・ネットワーク) • サービスとジョブの使い分けることでアプリケーションにバリエー ションを持たせることが可能に • 最大起動時間増加 • Eventarc に対応しているサービスと連携
23 Cloud Run 第 2 世代 Cloud Run Jobs •
スクリプト、バッチなどのスケジュールジョブ向け • 1 Job = N Task / 1 Task = 1 Container Instance
24 Cloud Run 第 2 世代 Cloud Run Jobs の使い分け
• 1つの Task を実行 • 複数の Task を直列に実行 • 複数の Task を並列に実行
25 CPU ブースト について
26 公式ブログ Start up CPU boost (Preview) • Cloud Run
/ Cloud Functions 第二世代向け https://cloud.google.com/blog/ja/products/serverless/ann ouncing-startup-cpu-boost-for-cloud-run--cloud-functions
27 CPUブースト Start up CPU boost (Preview) • Cloud Run
/ Cloud Functions 第二世代向け • コールドスタート時間を短縮し、より迅速にリクエストを処理でき るようになる • 詳しい挙動については調べきれてないです
28 CPUブースト 起動時のCPUブースト • 起動時により多くのCPUがコンテナに動的に割り当てられる • Java (SpringBoot / GraalVM)
でより大きな高速化がみられる
29 CPUブースト Cloud Run 第 2 世代 • コマンドライン or
コンソール画面から有効化 • Cloud Functions 第2 世代 • デフォルトで有効
30 CPUブースト CPUブーストなし CPUブーストあり • デフォルトで有効
31 検証記事 Start up CPU boost (Preview) • Cloud Run
/ Cloud Functions 第二世代向け • • 広い門の下には、この男のほかに誰もいない。 https://zenn.dev/cloud_ace/articles/bd95501cb0cd3f
32 Google Cloud の社内事情
33 Google Cloud について 問い合わせがはいってくるようになってきた • アライアンス統括部がリセールを担当 • 来期からは Google
Cloud のソリューションアーキテ クトの採用にも力を入れる • DA事業本部で BigQuery ガンガン利用している • DA事業本部でアプリ寄りの案件の相談もあり • CX事業本部では細々とやってますが、AWS やり尽 くした人の次の選択肢に是非候補に入れて欲しい
34
35 ここで一息
CX事業本部で使われている技術 2023/6/16 CX事業本部Delivery部サーバーサイドチーム 田中孝明
37 前提 CX事業本部で使われている技術についてお話しします • 日吉さんがしゃべった内容と重複するところもあります • ツッコミ、ガヤ大歓迎!
38 話す内容 話す内容 • AWS アーキテクチャ • 言語 • フレームワーク
/ ライブラリ • IaC • CI/CD • 認証認可 • プロジェクト管理、支援ツール • AI系サービス
39 AWS アーキテクチャ • サーバーレスアーキテクチャーが採用されている案件が多い ◦ API Gateway + AWS
Lambda + Amazon DynamoDB ◦ API Gateway + AWS Lambda + Amazon Aurora (RDS Proxy) ◦ AWS IoT を採用する案件で利用実績多し • AWS Fargate on ECS + Amazon Aurora • Amazon EKS を使っている案件もあるがレアケース
40 言語 • TypeScript の利用割合が多い ◦ CDK の影響から採用される傾向あり ◦ 次点で
JavaScript • Python、Golang、Java、Scala、Ruby も案件によって使われている • モバイルは Swift / Kotlin 、Flutter も採用実績あり • Rust を実証実験しているプロジェクトもある • 言語選定は慎重に行っています
41 フレームワーク / ライブラリ • フロントエンドは React が多い • Fastify
(TypeScript) • TypeORM (TypeScript) • モバイルの宣言的UIでは SwiftUI が採用されている ◦ 既存の UIKit と共存が多い ◦ Jetpack Compose は情報なし • Play! framework 2.8 (Scala) • Spring Boot
42 フレームワーク / ライブラリ • Unitテスト時のMock ◦ localstack ◦ moto
◦ dynalite ▪ jest-dynalite • vitest 用のプラグインを作ったメンバーも ◦ vitest-environment-dynalite
43 フレームワーク / ライブラリ
44 IaC • CDK (TypeScript) が大勢力 • Terraform (Google Cloudを利用している案件で多い)
• CloudFormation (AWS SAM) • 一部では Serverless framework も採用されている
45 CI/CD • GitHub Actions ◦ ほぼ主流 • CodePipeline •
GitLab Runner • CircleCI ◦ 新規で採用するのは減ってきている • Bitrise • Autify を採用していた案件もあり
46 認証認可 • Auth0 の採用実績が多い • LINEに関してはこの後、城岸さんがしゃ べってくれるはず・・・
47 プロジェクト管理、支援ツール • GitHub / Gitlab / Code Commit •
Zenhub • Trello / Pivotal tracker を使っているところも • Backlog • デザインは Figma が主流になりつつある • Notion / miro • スクラム開発
48 AIサービス • Github Copilot ◦ 一部の案件では採用に向けて顧客と調整中
49