Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Large Scale Video Monetization
                                   海量视频⼲⼴广告分发的挑战
                                          ...
关于 FreeWheel

• FreeWheel 提供对版权数字内容进⾏行价值管理的全⾯面解决⽅方案
• 服务于美国市场超过1/3视频⼲⼴广告流量,90%的领先视频⺴⽹网站为
  FreeWheel的客户或合作伙伴*
• ⽀支持数⼗十种平台和...
寻找体现内容最⼤大价值的⽅方程式
    $ ./adserver --start
视频产业的独特挑战 - 复杂的⽣生态链
                ⼲⼴广告商          内容拥有者

• 多⽅方业务整合
• 多变的⼲⼴广告投放策略
• 不同流量模式的分发渠道
                  版权拥有及运营⽅...
视频产业的独特挑战 - 多维度的⼲⼴广告形式和播放体验


• 视频内的线性(前后贴⽚片、中插与暂停)和⾮非线性(悬浮)
⼲⼴广告、⻚页⾯面展⽰示⼲⼴广告及其组合




• 来⾃自⼲⼴广告主(投放频次、区域与独占要求)、最终⽤用户(频
次控制...
技术堆栈


                                    Ruby on Rails
                          B2B UI



                             ...
B2B UI 架构


     Module                            Module                             Module
     Resources               ...
平滑处理流量
$ netstat -na
B2C服务集群的架构设计




                     GSLB (NetScaler)

       Lighttpd             Lighttpd         Lighttpd



         ...
为动态请求的峰值流量作好准备


• 基础设施
• 设计冗余
 • 服务端负载 - 50%
 • 客户端容许延迟
• 彩排!
• ⼤大量、稳定的⽇日常流量
• 静态化?




                 Confidential
    ...
保证全球服务的⾼高可⽤用性
    $ uptime
B2C服务集群的分布




                                       Data Service

           150Mbps, 90ms rtt
                         ...
Failure is a feature


 • 消灭单点故障
   • 可独⽴立运⾏行的集群
   • 可离线运⾏行的服务实例
 • 总是异步
 • 断线、重连与最终同步




                       Confiden...
实时数据透视与多维度报表
  $ tail -f adserver.log
多层次的数据服务


• ⽇日志导出
• 定期报表
• 实时报表
• 预测
• BI分析




           Confidential
                         15
实时报表服务的架构设计

• ZeroMQ for log transporting
• LevelDB for log matching
• Redis/MongoDB as Realtime Counters
• UI: JQuery + ...
接⼊入异构平台和终端
$ ftpd ; crond ; xcodebuild ; adb push
多样化的接⼊入是发展趋势




               Confidential
                             18
优良的API⽤用户体验有助于快速⼲⼴广泛的业务集成




                            Confidential
                                          19
API的基础:可插接的数据访问层


• 建⽴立⼀一致的内部数据层
  • API术语
  • API数据规范
• 维护兼容性
  • 迁移成本的考量



  通⽤用      API              API     客户端
客户端...
回顾
$ history | grep key
回顾

• adserver --start
  • 寻找体现内容最⼤大价值的⽅方程式
    • 可扩展的核⼼心架构:处理复杂多变业务逻辑
• netstat -na
  • 平滑处理流量冲击
    • 从链路层开始;⾼高峰流量的特质;冗余...
变化总在发⽣生


• 设计
 • 与产品团队合作:好的产品设计应该是可扩展、可重⽤用的
• 重构
 • 定期回顾流量结构和活跃的业务模式
• 透视
 • 建⽴立快速诊断问题和容易发现趋势的⼯工具




                   ...
Thank You!




             Confidential
You’ve finished this document.
Download and read it offline.
Upcoming SlideShare
Q1 2013 free_wheel_video_monetization_report
Next
Upcoming SlideShare
Q1 2013 free_wheel_video_monetization_report
Next
Download to read offline and view in fullscreen.

2

Share

杜嵩 Arch summit2012 dusong@freewheel

Download to read offline

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

杜嵩 Arch summit2012 dusong@freewheel

  1. 1. Large Scale Video Monetization 海量视频⼲⼴广告分发的挑战 杜嵩 sdu@freewheel.tv Arch Summit 2012 © FreeWheel 2012 SILICON VALLEY • NEW YORK • BEIJING • LONDON
  2. 2. 关于 FreeWheel • FreeWheel 提供对版权数字内容进⾏行价值管理的全⾯面解决⽅方案 • 服务于美国市场超过1/3视频⼲⼴广告流量,90%的领先视频⺴⽹网站为 FreeWheel的客户或合作伙伴* • ⽀支持数⼗十种平台和设备上的版权数字视频播放和⼲⼴广告管理,并为世界 杯、奥运会等⾼高访问量项⺫⽬目提供实时视频⼲⼴广告决策与统计分析。 * 统计数字基于2011 Q4 ComScore 和 FreeWheel 数据 Confidential 2
  3. 3. 寻找体现内容最⼤大价值的⽅方程式 $ ./adserver --start
  4. 4. 视频产业的独特挑战 - 复杂的⽣生态链 ⼲⼴广告商 内容拥有者 • 多⽅方业务整合 • 多变的⼲⼴广告投放策略 • 不同流量模式的分发渠道 版权拥有及运营⽅方 分发渠道 • 完整数据报表和分析 • 灵活的第三⽅方集成 分销商 第三⽅方平台 Confidential
  5. 5. 视频产业的独特挑战 - 多维度的⼲⼴广告形式和播放体验 • 视频内的线性(前后贴⽚片、中插与暂停)和⾮非线性(悬浮) ⼲⼴广告、⻚页⾯面展⽰示⼲⼴广告及其组合 • 来⾃自⼲⼴广告主(投放频次、区域与独占要求)、最终⽤用户(频 次控制、视觉优化)、监管机构(分级、提⽰示)的不同⾓角度 的要求 Confidential
  6. 6. 技术堆栈 Ruby on Rails B2B UI C++ Forecasting Ruby on MySQL Rails API OLTP OLAP C++ Ad Server SDK Flash, iOS, … C++ / Java Backend Confidential
  7. 7. B2B UI 架构 Module Module Module Resources Resources Resources Biz Logic Biz Logic Biz Logic C C C A A A O O O View/Helper P View/Helper P View/Helper P N N N I I I F Controller F Controller F Controller Model Model Model Shared Library SSO User Permission System API (Search, i18n, …) Tasks Shared Model Controller/Dispatcher View/Helper BizLogic Shared 3rd Plugins Components Shared Resources Confidential 7
  8. 8. 平滑处理流量 $ netstat -na
  9. 9. B2C服务集群的架构设计 GSLB (NetScaler) Lighttpd Lighttpd Lighttpd MMAP Dump OLTP Counter Server Memcached Counter Client Counter Client Counter Client Ad Server 1 Ad Server 2 Ad Server n Binary Logs ( Confidential 9
  10. 10. 为动态请求的峰值流量作好准备 • 基础设施 • 设计冗余 • 服务端负载 - 50% • 客户端容许延迟 • 彩排! • ⼤大量、稳定的⽇日常流量 • 静态化? Confidential 10
  11. 11. 保证全球服务的⾼高可⽤用性 $ uptime
  12. 12. B2C服务集群的分布 Data Service 150Mbps, 90ms rtt 1Gbps, 69ms rtt 1Gbps, <1ms rtt USWest ads cluster USEast1 ads cluster UK ads cluster USEast2 ads cluster Confidential
  13. 13. Failure is a feature • 消灭单点故障 • 可独⽴立运⾏行的集群 • 可离线运⾏行的服务实例 • 总是异步 • 断线、重连与最终同步 Confidential 13
  14. 14. 实时数据透视与多维度报表 $ tail -f adserver.log
  15. 15. 多层次的数据服务 • ⽇日志导出 • 定期报表 • 实时报表 • 预测 • BI分析 Confidential 15
  16. 16. 实时报表服务的架构设计 • ZeroMQ for log transporting • LevelDB for log matching • Redis/MongoDB as Realtime Counters • UI: JQuery + Highcharts + Google Map API Ad MQ Servers RT-Reporting server Servers RT- Bin/Ack Processor Counter? Logs LogTailer/ Processor MongoDB LogSend LogServer ? RT-UI Processor Debug er Historical Logs Data Processor Store? OLTP Confidential
  17. 17. 接⼊入异构平台和终端 $ ftpd ; crond ; xcodebuild ; adb push
  18. 18. 多样化的接⼊入是发展趋势 Confidential 18
  19. 19. 优良的API⽤用户体验有助于快速⼲⼴广泛的业务集成 Confidential 19
  20. 20. API的基础:可插接的数据访问层 • 建⽴立⼀一致的内部数据层 • API术语 • API数据规范 • 维护兼容性 • 迁移成本的考量 通⽤用 API API 客户端 客户端集成 (Ruby) (C++) SDK 第三⽅方 内部数据层 客户端 特定第三⽅方 导⼊入器 API 集成 服务端集成 (Ruby) (XSLT) Confidential 20
  21. 21. 回顾 $ history | grep key
  22. 22. 回顾 • adserver --start • 寻找体现内容最⼤大价值的⽅方程式 • 可扩展的核⼼心架构:处理复杂多变业务逻辑 • netstat -na • 平滑处理流量冲击 • 从链路层开始;⾼高峰流量的特质;冗余 • uptime • 保证全球数据中⼼心的⾼高可⽤用性 • 没有单点、总是异步、最终同步 • tail -f adserver.log • 实现亚分钟级数据透视与多维度商业智能报表 • 实时⽇日志处理框架 • ftpd ; crond ; xcodebuild ; adb push • 接⼊入产业链上下游的异构平台和设备 • 开放数据架构、注重API的⽤用户体验 Confidential 22
  23. 23. 变化总在发⽣生 • 设计 • 与产品团队合作:好的产品设计应该是可扩展、可重⽤用的 • 重构 • 定期回顾流量结构和活跃的业务模式 • 透视 • 建⽴立快速诊断问题和容易发现趋势的⼯工具 Confidential 23
  24. 24. Thank You! Confidential
  • ShuichiHiroya

    Mar. 26, 2017
  • mebeta

    Mar. 10, 2013

Views

Total views

1,654

On Slideshare

0

From embeds

0

Number of embeds

1

Actions

Downloads

24

Shares

0

Comments

0

Likes

2

×