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
September 25, 2014
Technology
2
4.4k
フルスクラッチで書いたアドサーバの開発・運用史
アドサーバの開発・運用で得た知見について説明しています。
Satoshi
September 25, 2014
Tweet
Share
More Decks by Satoshi
See All by Satoshi
高速な広告配信サーバの作り方のコツ
satoshi03
3
510
スケールしない広告サーバの作り方
satoshi03
0
240
Gunosy AdServerのデータ周りの話
satoshi03
2
3k
Gunosy.go #2 container
satoshi03
1
72
Gunosy Go Lang Study #6 net net/http net/url
satoshi03
0
150
Other Decks in Technology
See All in Technology
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
140
LY Tableauでの Tableau x AIの実践 (at Tableau Now! - 2026-02-26)
yoshitakaarakawa
0
1.3k
Security Diaries of an Open Source IAM
ahus1
0
200
マネージャー版 "提案のレベル" を上げる
konifar
18
12k
Kiro のクレジットを使い切る!
otanikohei2023
0
110
チームメンバー迷わないIaC設計
hayama17
5
3.8k
Serverless Agent Architecture on Azure / serverless-agent-on-azure
miyake
1
150
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
7
7.1k
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
3
890
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
540
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
44k
Featured
See All Featured
Everyday Curiosity
cassininazir
0
150
Unsuck your backbone
ammeep
672
58k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Fireside Chat
paigeccino
42
3.8k
For a Future-Friendly Web
brad_frost
183
10k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
270
Marketing to machines
jonoalderson
1
5k
Designing for Timeless Needs
cassininazir
0
150
Git: the NoSQL Database
bkeepers
PRO
432
66k
Speed Design
sergeychernyshev
33
1.6k
AI: The stuff that nobody shows you
jnunemaker
PRO
3
350
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Transcript
フルスクラッチで書いた アドサーバの開発運⽤用史 株式会社Gunosy 2014 年年 9⽉月
©Gunosy Inc. 印南聡志(いんなみ さとし) アドエンジニア 2014年年6⽉月⼊入社(4ヶ⽉月⽬目) ⾔言語 l Java l Python
Git Hubアカウント l satoshi03 ⾃自⼰己紹介
©Gunosy Inc. 業務 • 「広告による収益を最⼤大化する」 • AdServerの開発・運⽤用 • 配信周りの開発 •
広告推薦ロジック開発 • 広告枠の開発 • ログ集計・分析 • チーム⼈人数 • 3 ~∼ 4⼈人 アドチームとは
©Gunosy Inc. 罠にかかって学んだ広告事業で⼤大切切な2つのこと 本⽇日話したい内容
©Gunosy Inc. Gunosyの広告事業 ⾃自社製のAdServerを開発・運⽤用 Gunosy Ads l ⾃自社メディア(Gunosyアプリ)に広告配信 Gunosy Ad
network l 他社メディアに広告配信 今回のお話
©Gunosy Inc. 広告事業で⼤大切切なこと 広告による収益の最⼤大化 良良い広告を⼤大量量に配信すること
©Gunosy Inc. 良良い広告とは? メディア (Gunosy) ・ ユーザのクリック率(CTR)が高い ・
広告の単価が高い 第一の罠 単価の高い広告をクリックさせればいい
©Gunosy Inc. メディア視点での収益⾄至上主義の罠 メディアの収益性を上げたい!! とにかくクリックされやすい広告を出す クリック率率率が上昇しメディアの収益が増加 しかし、、、
©Gunosy Inc. しかし、、 次第に収益が低下
©Gunosy Inc. このとき起きていること ユーザ メディア (Gunosy) 広告主 ・ ユーザのクリック率が高い
・ 広告の単価が高い ・ ニーズにマッチしていない ・ ストレスが多い ・ ユーザのコンバージョン率 が低い • ストレス増加によるユーザの離脱 • 効果があわないことによる広告主の離脱
©Gunosy Inc. ⼤大切切なこと:その1 ユーザ メディア (Gunosy) 広告主 ・ ユーザのクリック率が高い
・ 広告の単価が高い ・ ニーズにマッチしている ・ ストレスが少ない ・ ユーザのコンバージョン率 が高い 良い広告の定義はユーザ・広告主・メディアによって異なる ユーザ・広告主・メディア全ての利益を最大化!「三方良し」
©Gunosy Inc. 【参考】良良い広告を判断するための指標 DAU (Daily Active User) 1⽇日のアクティブユーザ数 CVR (ConveRsion
Rate) クリックに対するコンバージョンの割合 ユーザ 広告主 メディア eCPM (effec2ve Cost Per Mill) 1000回インプレション(表示)あたりの収益 CTR (Click Through Rate) インプレッション(表示)に対するクリックの割合 CPA (Cost Per Acquisi2on) 1コンバージョンにかかったコスト
©Gunosy Inc. 広告事業で⼤大切切なこと 広告による収益の最⼤大化 良良い広告を⼤大量量に配信すること
©Gunosy Inc. ⼤大量量に配信するとは? • 配信にレイテンシを出さない(< 50msec) • 表⽰示枠(在庫)を増やす • (もちろん)⽌止まらない
©Gunosy Inc. アクセス数の急激な増加 5⽉月から4ヶ⽉月で5倍以上のアクセス数の増加 数千万リクエスト/ 日 数億リクエスト/日 5月 9月
©Gunosy Inc. アクセス数の時間ごとの急激な増加 ピーク時には通常時の3倍〜~5倍のアクセス 21:00 17:00 12:00
8:00 リクエスト数 時間
©Gunosy Inc. 第二の罠 サーバを横に並べればなんとかなる!
©Gunosy Inc. サーバ台数を20台に、、 _⼈人⼈人⼈人⼈人⼈人⼈人_ > レイテン⽒氏来訪 <  ̄Y^Y^Y^Y^Y ̄
©Gunosy Inc. そのとき何がおこっていたか 問題:R/WをするRedisにアクセスが集中 Write/Bulk Read待ちが発⽣生し遅延が発⽣生 ・・・・・ Elastic Load Balancing
EC2 instance Redis on EC2 instance Redis Read Replica
©Gunosy Inc. 対策 ・・・・・ Elastic Load Balancing EC2 instance Redis
on EC2 instance Redis Read Replica Amazon S3 bucket 配信側でRedisのReadをファイルで処理 s3からダウンロードして各インスタンスでロード レイテンシ が50msec以内に!!
©Gunosy Inc. ⼤大切切なこと:その2 たとえキャッシュでも1箇所を参照するような構成にしない スケールアウトの過程で必ずボトルネックに
©Gunosy Inc. まとめ 罠にかかって学んだ広告事業で⼤大切切な2つのこと 1. ユーザ・広告主・メディア全ての利利益を最⼤大化 2. キャッシュでも1箇所を参照するような構成にしない
©Gunosy Inc. We are hiring!!! 良良い広告を⼤大量量に配信する仕組みを 作りたいエンジニアWanted!!