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
Herokuの無料プランで月間100万PVをさばく(さばかない)話
Search
o_tomomichi
February 04, 2018
Technology
3
8.7k
Herokuの無料プランで月間100万PVをさばく(さばかない)話
o_tomomichi
February 04, 2018
Tweet
Share
More Decks by o_tomomichi
See All by o_tomomichi
個人開発からのんびり育てる意識低いWebサービス開発の話 / Easy going web development
tomomichi
0
1.9k
個人開発を支える何も作らない技術 / No Devs No Bugs
tomomichi
3
1.1k
FirebaseでSPAするときのSEO/OGP対応もうこれでいいんじゃないですか2018暫定版
tomomichi
1
7.5k
Other Decks in Technology
See All in Technology
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
600
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
AIチャットボット開発への生成AI活用
ryomrt
0
170
TypeScript、上達の瞬間
sadnessojisan
46
13k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
The Rise of LLMOps
asei
7
1.7k
Lambdaと地方とコミュニティ
miu_crescent
2
370
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
320
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
230
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
31
6.3k
Fireside Chat
paigeccino
34
3k
Done Done
chrislema
181
16k
Designing for Performance
lara
604
68k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Docker and Python
trallard
40
3.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Transcript
Herokuの無料プランで 月間100万PVを さばく(さばかない)話 @Heroku Meetup #19 Heroku Trust!
自己紹介 • なんちゃってWebエンジニア • ぼっちWebサービス開発 • 合同会社を準備中(がんばる) おおにし @NOT SO
BAD
ニッチなWebサービスを作る性癖があります トーナメント作成サービス 【THE TOURNAMENT】 年表作成サービス 【THE TIMELINE】 Rails Heroku Riot.js
Firebase
簡単・便利なトーナメント表作成サービス
THE TOURNAMENTの話 ・細々と4年前から運用 ・意外と法人利用が多い ・売上もある(儲かってはない) ・ときどきアクセス跳ねるけど、基本 FreeDynoのみで運用
None
THE TOURNAMENT埋め込みパーツ(iframe)
間接Yahoo!砲
(余談) 埋め込みパーツの提供は ツール系サービスの集客にGood
(やっと本題) システム構成どうしてるか
更新系と閲覧系を別にする Heroku Google Cloud Storage
【THE TOURNAMENT】 Heroku GCS 【外部サイト】 更新 閲覧 閲覧 静的HTMLを出力
• かなり安い • 十分速い • スケールの心配ゼロ
https://note.mu/konpyu/n/nb424a9a2ea8a
やり方が違う(Fastly)だけで コンセプトはたぶん同じ。
Edge Server 【Fastly】 Origin Server 【Heroku】
たぶんFastlyが正解という前提で、GCSのメリット • 固定料金「$25/月〜」(Heroku Fastly Addon)が不要 →Addonの最低料金は静的アセットの前提?動的コンテンツ のキャッシュはもっとかかるのかも(知らない) →アクセスが多いとGCSでも多少お金かかるけどね • 導入が簡単・メンテナンスしやすい
→困ったらStorage見れば状態がわかる →3年間ほぼトラブルなし
GCS方式のデメリット • 即時削除(Instant Purge)ができない →エッジキャッシュを諦めた。。 →元々east asiaのDRAなので、そんなに課題感ないかも • 別ドメインになっちゃうことによるSEO問題 →(次ページ)
CDNの場合、アクセス先のドメインは常に同じ https://the-tournament.jp https://the-tournament.jp
GCS方式だと、どうしても別ドメインになる User https://the-tournament.jp User Edge Server Origin Server Heroku GCS
https://app.the-tournament.jp
解決案:Heroku側にcanonical向けてやれば…? User https://the-tournament.jp User Edge Server Origin Server Heroku GCS
https://app.the-tournament.jp <link rel="canonical" href="...">
canonicalは別ドメインでも有効。 でも最近知ったのでまだ未検証。 もっと早く知っていれば...
まとめ
ちゃんとしたサービスなら Fastly使いましょう
でもうちみたいな弱小サービスなら GCS(S3)形式もワンチャンあるのでは
Thank you.