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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kohei Higuchi
December 13, 2023
Technology
4
1.3k
スタートアップにおけるクラウド上でのシステム設計の進化とその実践
JAWS Festa in Kyushu 2023.10.7 での登壇資料です
Kohei Higuchi
December 13, 2023
Tweet
Share
Other Decks in Technology
See All in Technology
Phase05_ClaudeCode入門
overflowinc
0
2.3k
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
150
LLMに何を任せ、何を任せないか
cap120
10
5.8k
Change Calendarで今はOK?を仕組みにする
tommy0124
1
120
AIエージェント勉強会第3回 エージェンティックAIの時代がやってきた
ymiya55
0
130
RGBに陥らないために -プロダクトの価値を届けるまで-
righttouch
PRO
0
120
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.3k
Bref でサービスを運用している話
sgash708
0
200
FlutterでPiP再生を実装した話
s9a17
0
200
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
2
1.8k
SSoT(Single Source of Truth)で「壊して再生」する設計
kawauso
2
370
ADK + Gemini Enterprise で 外部 API 連携エージェント作るなら OAuth の仕組みを理解しておこう
kaz1437
0
210
Featured
See All Featured
[SF Ruby Conf 2025] Rails X
palkan
2
860
The Invisible Side of Design
smashingmag
302
51k
Claude Code のすすめ
schroneko
67
220k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
230
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
780
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
220
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Evolving SEO for Evolving Search Engines
ryanjones
0
170
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
2023.10.7 JAWS Festa in Kyushu スタートアップにおけるクラ ウド上でのシステム設計の 進化とその実践
自己紹介 • 樋口 浩平(ひぐち こうへい) • 2013年、ヤマップに2番目にジョイン • YAMAPローンチ前から開発に関わり、システム開 発責任者として従事した後、CTOとしてエンジニア
組織のパフォーマンス最大化に努める • 好きな山は宝満山 • アビスパ福岡サポーター
YAMAPについて 電波が届かない山の中でも、GPSで現在地と登山ルートがわ かる、登山を楽しく安全にするアプリ 日本最大の登山・アウトドアプラットフォーム
YAMAPについて 400万ダウンロードを超え、国内トップシェアとなっている 毎週10万件の登山記録と250万枚の写真が投稿され、 毎月10億件のAPIリクエストを受け付ける
• クラウド上のシステム設計の変遷 • システム設計をリニューアルしたときの話 • リニューアルの社内合意形成の進め方 今日話すこと
システム構成変遷の年表 シード アーリー ミドル レイター 2013年 2016年 2018年 2020年 ローンチ
資金調達 資金調達 資金調達 リニューアル リニューアル 日々ブラッシュアップ
立ち上げ期の小咄 メールアドレスとパスワードが入れ替わる事件 メールアドレス「もしかして...」 パスワード「私たち...」 _人人人人人人人人人人人人人_ > 入れ替わってるーー!? <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄
2013年のインフラ構成 • EC2インスタンスが1台とS3があるのみ • Webサーバ、DB、開発環境、管理画面すべてEC2の中にAll in One
あんなトラブル、こんな障害 • アクセスが増えると、すぐにCPU使用率が100%になる • ボトルネックが多すぎて原因が分からない • スケールアップするために全部を再起動しないといけない • 開発環境で障害が起きて Production環境もろとも落ちる
リニューアル計画 • Web サーバと DB の分離 • Web サーバのインスタンスを分けて配置する •
ALB で負荷分散 • Web の Auto Scalling • 他多数
2016年のインフラ構成
2019年にフルリニューアル • バックエンドの API を Rails で作り直す • ECS で
Docker コンテナ化 • Terraform での管理に着手 • フロントエンドを分離して Vue.js で実装 • Web サイトのデザインをリニューアル • ドメイン変更 yamap.co.jp -> yamap.com
社内合意形成 • アプリケーションまでリニューアルするので、新機能開発は1年以上停滞 することになる • 重要な経営の意思決定になる • エンジニアではない方には建築に例えて説明してみる • ローンチ時はプレハブ。増改築を繰り返して今の状態。
このままではビルは建てられない。基礎から建て替える必要がある
2019年のインフラ構成
2023年のインフラ構成 • 運用の自動化、省力化 • IaC が進み、いい感じになっている • ほぼ全て Terraform で管理されている
• ほぼ全て Auto Scaling されている • ECS と Lambda を適切に使い分けている • Aurora の Graviton2 インスタンスを早期導入した
2023年のインフラ構成
2023年のインフラチーム体制 • インフラは 2022 年 4 月まで 1 人で運用していた •
1 人でも運用できていたのは AWS のマネージドサービスのおかげ
カンブリア砲にも耐えるインフラ • 6/29のカンブリア宮殿でYAMAPの特集回が放送された • アクセスがスパイクするもサービスへの影響は無し
まとめ • スタートアップの初期フェーズでは、とりあえずアプリケーションが動けば良 いというケースがある • その後、改善を重ねていくことが大事 • 大きなロードマップを描いて • 小さなことからコツコツと
• 社内説明は相手にとって分かりやすい説明を