Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Yahoo砲に耐えられるインフラの話
Search
tusui
November 03, 2016
Programming
3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Yahoo砲に耐えられるインフラの話
tusui
November 03, 2016
Other Decks in Programming
See All in Programming
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
360
AHC070解法紹介
eijirou
0
130
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
160
Family mrubyの進捗
kishima
1
130
The Rails Doctrine Decade
koic
2
170
すこし踏み込む CancellationToken
htkym
2
650
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
220
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
250
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
260
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
160
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
330
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
23k
Chasing Engaging Ingredients in Design
codingconduct
0
320
Producing Creativity
orderedlist
PRO
348
41k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
510
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
So, you think you're a good person
axbom
PRO
2
2.2k
Facilitating Awesome Meetings
lara
57
7.1k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Transcript
Yahoo砲に耐えられる インフラの話 2016/11/02
アジェンダ • 自己紹介 • Yahoo砲に耐えられていなかった歴史 • Yahoo砲に耐えられるインフラへ • おわりに
自己紹介 2014年10月入社 技術部SREチーム 2008年ぐらいからインフラ周り サッカーや登山してます twitter : @_tusui
Yahoo砲に耐えられていなかった歴史 2012年6月 弁護士ドットコムニュース Yahoo配信開始
Yahoo砲に耐えられていなかった歴史 最初期のサーバ構成 (多分) 前提:環境はAWSです
Yahoo砲に耐えられていなかった歴史 初めてのYahooトピックス掲載 コンプガチャ返金請求は可能?
Yahoo砲に耐えられていなかった歴史 結果: サービスダウン
Yahoo砲に耐えられていなかった歴史 このときの限界: 500 セッション(GoogleAnalytics) 50 Mbps これぐらいで落ちてしまっていた……
Yahoo砲に耐えられていなかった歴史 対策1: スケールアウト
Yahoo砲に耐えられていなかった歴史 AWS Auto Scaling • WebAppサーバのスケールアウト • CloudWatchと組合せ • Latencyに閾値設定して発動
• 通常時WebAppサーバ2〜6台
Yahoo砲に耐えられていなかった歴史 対策2: CDN + htmlキャッシュ
Yahoo砲に耐えられていなかった歴史 AWS CloudFront • 静的ファイルの配信 htmlキャッシュ • ニュース記事のhtmlを作成し、 それを返す •
Apacheと少しのPHP処理 だけで返す
Yahoo砲に耐えられていなかった歴史 どうなったか
Yahoo砲に耐えられていなかった歴史 結果: サービスダウン
Yahoo砲に耐えられていなかった歴史 このときの限界: 3000 セッション(GoogleAnalytics) 300 Mbps
Yahoo砲に耐えられていなかった歴史 原因 AutoScaleよりアクセス増の方が早い
Yahoo砲に耐えられていなかった歴史 • 全然間に合わない ◦ サーバ起動にも時間がかかる ◦ swap作成など • ELBのスケールアップも間に合わないときがある (と思っている)
• WebAppサーバの数さえ増やせればさばける ◦ DBがボトルネックになるサービス規模ではない
Yahoo砲に耐えられていなかった歴史 結局どう対応していたか?
Yahoo砲に耐えられていなかった歴史 • YahooのページとGoogle Analyticsを監視 ◦ Yahoo掲載情報をチャットに通知 ◦ 同時セッション数をチャットに通知 ▪ 流入が増えそうならば、手動で
AutoScaleの設定変更 ▪ 大丈夫そうならそのまま
Yahoo砲に耐えられていなかった歴史 Autoとは?
Yahoo砲に耐えられるインフラへ 2015年 Yahoo砲に耐えられるインフラへ 改善着手 今までインフラ専任の人はいなかった
Yahoo砲に耐えられるインフラへ 何をしたか?
Yahoo砲に耐えられるインフラへ • カーネルパラメータのチューニング ◦ somaxconn ◦ tcp_tw_reuse など • Varnishを前方に配置
◦ ニュース記事ページをキャッシュ ▪ WebAppサーバまでいかせない ◦ CloudFrontが返していたファイルもキャッシュ ◦ 動的生成するものも短時間キャッシュ
Yahoo砲に耐えられるインフラへ • Varnishサーバ ◦ 2台 ◦ 中にnginxも • WebAppサーバ ◦
5〜6台
Yahoo砲に耐えられるインフラへ どうなったか
Yahoo砲に耐えられるインフラへ 結果: 耐えられるように なった
Yahoo砲に耐えられるインフラへ • 雑談しながら見てる • サーバ台数もそのまま
Yahoo砲に耐えられるインフラへ 今のところの実績: 27000 セッション(GoogleAnalytics) 1.5 Gbpsくらい
おわりに 今後の展望 • Infrastructure as Code ◦ サーバテストのCI • 適材適所なアーキテクチャ
◦ microservice ◦ Dockerなど • セキュリティ対策の自動化
おわりに ご清聴ありがとうございました