Slide 1

Slide 1 text

フルスクラッチで書いた アドサーバの開発運⽤用史 株式会社Gunosy 2014  年年  9⽉月

Slide 2

Slide 2 text

©Gunosy Inc. 印南聡志(いんなみ  さとし) アドエンジニア 2014年年6⽉月⼊入社(4ヶ⽉月⽬目)   ⾔言語 l Java l Python Git  Hubアカウント l satoshi03 ⾃自⼰己紹介

Slide 3

Slide 3 text

©Gunosy Inc. 業務 •  「広告による収益を最⼤大化する」 •  AdServerの開発・運⽤用 •  配信周りの開発 •  広告推薦ロジック開発 •  広告枠の開発 •  ログ集計・分析 •  チーム⼈人数 •  3  ~∼  4⼈人 アドチームとは

Slide 4

Slide 4 text

©Gunosy Inc.   罠にかかって学んだ広告事業で⼤大切切な2つのこと 本⽇日話したい内容

Slide 5

Slide 5 text

©Gunosy Inc. Gunosyの広告事業 ⾃自社製のAdServerを開発・運⽤用 Gunosy  Ads   l ⾃自社メディア(Gunosyアプリ)に広告配信 Gunosy  Ad  network   l 他社メディアに広告配信 今回のお話

Slide 6

Slide 6 text

©Gunosy Inc. 広告事業で⼤大切切なこと 広告による収益の最⼤大化 良良い広告を⼤大量量に配信すること

Slide 7

Slide 7 text

©Gunosy Inc. 良良い広告とは? メディア   (Gunosy) ・ ユーザのクリック率(CTR)が高い   ・ 広告の単価が高い   第一の罠 単価の高い広告をクリックさせればいい  

Slide 8

Slide 8 text

©Gunosy Inc. メディア視点での収益⾄至上主義の罠 メディアの収益性を上げたい!! とにかくクリックされやすい広告を出す クリック率率率が上昇しメディアの収益が増加 しかし、、、

Slide 9

Slide 9 text

©Gunosy Inc. しかし、、   次第に収益が低下

Slide 10

Slide 10 text

©Gunosy Inc. このとき起きていること ユーザ メディア   (Gunosy) 広告主 ・ ユーザのクリック率が高い   ・ 広告の単価が高い   ・ ニーズにマッチしていない   ・ ストレスが多い   ・ ユーザのコンバージョン率 が低い •  ストレス増加によるユーザの離脱   •  効果があわないことによる広告主の離脱  

Slide 11

Slide 11 text

©Gunosy Inc. ⼤大切切なこと:その1 ユーザ メディア   (Gunosy) 広告主 ・ ユーザのクリック率が高い   ・ 広告の単価が高い   ・ ニーズにマッチしている   ・ ストレスが少ない ・ ユーザのコンバージョン率 が高い 良い広告の定義はユーザ・広告主・メディアによって異なる   ユーザ・広告主・メディア全ての利益を最大化!「三方良し」

Slide 12

Slide 12 text

©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コンバージョンにかかったコスト  

Slide 13

Slide 13 text

©Gunosy Inc. 広告事業で⼤大切切なこと 広告による収益の最⼤大化 良良い広告を⼤大量量に配信すること

Slide 14

Slide 14 text

©Gunosy Inc. ⼤大量量に配信するとは? •  配信にレイテンシを出さない(<  50msec) •  表⽰示枠(在庫)を増やす •  (もちろん)⽌止まらない

Slide 15

Slide 15 text

©Gunosy Inc. アクセス数の急激な増加 5⽉月から4ヶ⽉月で5倍以上のアクセス数の増加 数千万リクエスト/ 日 数億リクエスト/日 5月 9月

Slide 16

Slide 16 text

©Gunosy Inc. アクセス数の時間ごとの急激な増加 ピーク時には通常時の3倍〜~5倍のアクセス 21:00   17:00   12:00   8:00   リクエスト数   時間  

Slide 17

Slide 17 text

©Gunosy Inc. 第二の罠 サーバを横に並べればなんとかなる!

Slide 18

Slide 18 text

©Gunosy Inc. サーバ台数を20台に、、 _⼈人⼈人⼈人⼈人⼈人⼈人_ >  レイテン⽒氏来訪  <  ̄Y^Y^Y^Y^Y ̄

Slide 19

Slide 19 text

©Gunosy Inc. そのとき何がおこっていたか 問題:R/WをするRedisにアクセスが集中         Write/Bulk  Read待ちが発⽣生し遅延が発⽣生 ・・・・・ Elastic Load Balancing EC2 instance Redis on EC2 instance Redis Read Replica

Slide 20

Slide 20 text

©Gunosy Inc. 対策 ・・・・・ Elastic Load Balancing EC2 instance Redis on EC2 instance Redis Read Replica Amazon S3 
 bucket 配信側でRedisのReadをファイルで処理       s3からダウンロードして各インスタンスでロード       レイテンシ が50msec以内に!!

Slide 21

Slide 21 text

©Gunosy Inc. ⼤大切切なこと:その2 たとえキャッシュでも1箇所を参照するような構成にしない スケールアウトの過程で必ずボトルネックに

Slide 22

Slide 22 text

©Gunosy Inc. まとめ 罠にかかって学んだ広告事業で⼤大切切な2つのこと 1.  ユーザ・広告主・メディア全ての利利益を最⼤大化 2.  キャッシュでも1箇所を参照するような構成にしない

Slide 23

Slide 23 text

©Gunosy Inc. We  are  hiring!!! 良良い広告を⼤大量量に配信する仕組みを 作りたいエンジニアWanted!!