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
Satoshi
March 03, 2016
Technology
0
220
スケールしない広告サーバの作り方
スケールしない広告サーバを作ってしまうアンチパターンについてまとめています.
Satoshi
March 03, 2016
Tweet
Share
More Decks by Satoshi
See All by Satoshi
高速な広告配信サーバの作り方のコツ
satoshi03
3
480
Gunosy AdServerのデータ周りの話
satoshi03
2
2.9k
フルスクラッチで書いたアドサーバの開発・運用史
satoshi03
2
4.4k
Gunosy.go #2 container
satoshi03
1
69
Gunosy Go Lang Study #6 net net/http net/url
satoshi03
0
140
Other Decks in Technology
See All in Technology
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
26k
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
250
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
1
520
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
250
Beyond Kaniko: Navigating Unprivileged Container Image Creation
f30
0
110
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
300
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
1
210
さくらのIaaS基盤のモニタリングとOpenTelemetry/OSC Hokkaido 2025
fujiwara3
2
260
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
380
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
1
480
WordPressから ヘッドレスCMSへ! Storyblokへの移行プロセス
nyata
0
340
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
100
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
680
Statistics for Hackers
jakevdp
799
220k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to train your dragon (web standard)
notwaldorf
94
6.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Thoughts on Productivity
jonyablonski
69
4.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
230
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Become a Pro
speakerdeck
PRO
28
5.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Transcript
印南 @ Gunosy 広告技術部 スケールしない広告サーバの作り方
自己紹介 • 印南聡志(いんなみ さとし) • Gunosyのアドエンジニア • 2014年6月 入社 •
Gunosyのアド配信サーバ周り全般担当 • 言語 • Go • Python • 最近ランニングにはまっております
今日のお話 スケールしない 広告サーバの作り方 ※ここでのスケールはスケールアウトのことです
注意 スケール時のアンチパターンをまとめております! 弊社の広告サーバがスケールしないわけではありません!
あなたの会社の広告サーバは スケールしていますか?
スケールしないと… 急なリクエスト増に耐えられない
レイテンシ(遅延)が発生
エンジニアの死
油田王になりたくなる
作り方を知れば あなたにも簡単に作れます!
スケールしない広告サーバの作り方① ボトルネックをガンガン作ろう!
ボトルネックをガンガン作ると… アクセス増のタイミングで ボトルネック部分が突然詰まる!
ボトルネックを作るには?
ボトルネックを作るには? (その1) 配信サーバからデータストアに ガンガン書き込みを走らせよう!
配信サーバ 配信データ DB READ WRITE ボトルネック 書き込みが分散できず 詰まる
ボトルネックを作るには? (その2) 全データを一つの データストアに入れよう!
広告情報 配信候補 消化予算 ユーザ属性 FQ リタゲ … データサイズ… ライフサイクル… 重要度…
配信データDB アクセスが集中 メンテが困難
ボトルネックを作るには? (その3) 全ての処理を同期的に行おう!
ログDB WRITE ボトルネック 配信サーバ ELB 書込み完了を 待機
スケールしない広告サーバの作り方② サーバ追加が超絶難しい 環境を作ろう!
どうやって作るか?
サーバを追加するのに 物理的にサーバを購入するために 承認が必要な環境を整えよう! サーバ追加を超絶難しくするには? 3人以上の承認が 必要なのがベター
サーバごとに独自の環境設定を (バレにくいように)埋めこもう! サーバ追加を超絶難しくするには?
どこに隠しておくのが良いのか? • configファイル • 環境変数 • cron /etc/xx/include あたりがGood 実行ユーザを
変えて撹乱
サーバ追加を超絶難しくするには? 継続的インテグレーション(CI)環境 を作らないようにしよう! 自動ビルド 自動テスト 自動デプロイ
まとめ スケールしない広告サーバを作るには? ボトルネックをガンガン作ろう! サーバ追加が超絶難しい環境を整えよう!
最後に スケールする広告サーバに興味があれば 懇親会でお声掛けください
We Are Hiring!!! Gunosyではスケールする広告サーバを 開発するエンジニアを 募集しております!!