SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
服务化与体系化
解决大量定制小项目开发困境


     腾讯/广告平台产品部/互动广告研发中心
                      周健
                   Version: 2.1
   项目背景
   解决方案与实践
   效果对比与RIO分析
   举例介绍
   历程与启示
项目的背景




   项目量:不断增加的活动开发项目,人力无法随之同比例增长
   复杂度:广告主的要求越来越高,往往伴随富媒体广告、社交广告等多种形式
   高性能:随着活动规模的增长,弱海量服务的需求随之增加
   复用性:三地开发组、外包的开发框架不统一,无法最大化复用成果,也无法共享外包资源
   可运营:互动活动面对开发、测试、运维、监控、动态运营等方面需要『服务云端化的需求』
最初的开发方式与弊端
 开发方式:LAMP + PHP组件
 弊端
  部署与发布
  运营与升级
  监控与告警
  性能与并发控制
  敏感功能的审查与外包
  运营数据集中分析
  。。。
   项目背景
   解决方案与实践
   效果对比与RIO分析
   举例介绍
   历程与启示
解决方案




 SDK      Server



Monitor    OSS
解决方案 – 系统的组成
           风车应用平台(SDK)                         风车管理平台(OSS)
 标准组件         FILTER集合     开发运营工具             业务统计        运营支撑

    SDK框架与基础库(内置支撑系统API)                      开发调试        系统管理



                         风车支撑平台(Server)
                                                           旁路体系
                  接口机群(内置路由策略)                              与其他

存储类服务            逻辑类服务              接口类服务       运营类服务      染色机制

 个人信息        抽奖类(2)      兑换码类(2)    即通代理(5)      网管上报      备份机制

 活动注册        作品上传类(3)    计数器类(3)    数平代理         恶意检测      同步机制

历史参与活动       Bitmap服务    票据服务       空间代理(4)      统一日志服务    灰度机制

 积分存储         发奖服务       秒杀服务       图标点亮(4)      服务质量监控    异步队列

             UDS/IP服务               同步转发(4)      DB过载保护    通知系统
Cache/DB
实践1:基础框架标准化
SDK特点
 标准MVC实现
  实现了目前流行MVC框架的多数特性,包括FILTER、LAYOUT、
   SLOT、ORM等)
 提供异步消息队列的特性,使得PHP CGI异步化成为可能
 内置监控上报、运维安全、测试模式等特性
  收集URI用于安全扫描(测试环境)
  收集SQL语句用于性能分析(测试环境)
  提供DEBUG BAR用于测试发现问题(测试环境)
  对PHP SDK重要的监控点自动分项目进行数据上报
 内置云服务API及其相关容灾特性
 统一框架与类库
  所有活动、产品的统一开发框架
  内部开发与外包统一的框架
实践2:服务云端化
云服务特点
 按SET统一进行部署和扩容,服务之间松耦合
 统一的无状态接口层屏蔽后台内部实现
 灵活的路由机制方便扩容、迁移与隔离服务
  支持按照项目、用户ID、命令ID进行路由
  支持常规模式与高性能模式
 提供染色机制、日志中心服务以快速定位问题
 高性能、插片式后台服务
实践3:运营可视化
运营平台特点
 后台服务可视化
  云服务管理与资源分配
  云服务的项目配置
  云服务的状态查看与数据查询
  云服务的报表查看
 数据分析与报表展示
 云服务接口与公司其他接口调试
 SDK配置管理与版本控制
实践4:监控立体化
运营质量指标化
监控平台特点
 多维度监控(项目/属性/SET/IP等)
 项目自动接入
  与SDK集成,接入SDK的所有项目也自动接入SQM,无须申请和
   配置
 SDK中所有的关键点接入SQM
  SDK访问量,访问耗时
  DB访问量,访问耗时
  云服务访问量,访问耗时
  从项目维度,从时间维度,从属性维度进行查看
 对项目做PROFILING分析
 对项目运营质量评分与排行功能
   项目背景
   解决方案与实践
   效果对比与RIO分析
   举例介绍
   历程与启示
风车使用前后对比 - 开发模式
                   使用风车前              使用风车后

开发模式      php+memcache+db   php+云服务

需求变更操作*   修改代码/迁移数据/重新发布    OSS上修改配置

易用性       编写代码工作量大          自动生成框架/大量辅助工具/云服务

复用性       copy代码            后台服务化
          高                 低,可外包
对开发人员要求
          (进而导致项目外包的风险高)    (常用服务/核心服务/敏感服务云端化)

系统稳定性     一般                非常好


  “开放是一种能力”。对于项目密集型的团队,外包是个不错的节约成本的选择。尤其
   在每个月项目量经常变化的情况下。
风车使用前后对比 - 性能、运营与安全
                使用风车前             使用风车后

性能瓶颈     db瓶颈(A类单机2k/s)   云服务(B类单机50k/s)

请求突发     db大规模扩容和数据迁移     修改配置切换云服务至专区

监控和预警    无(无机制和无实现手段)     系统做自动监控和预警*

过载保护     无                内置DB过载保护

安全性      实现代价大/性能差        提供恶意检测服务和各类web安全机制



  在业务变的更复杂、项目量翻倍的情况下,基础告警从2010H2的“日”级别降低到
   2011H2的“双周”级别
  兑换码、抽奖、投票、计数等云服务 0 故障
  监控系统改变了活动开发人员的“运营意识”
风车项目的部分运营数据
 投入人力:开发人员兼职3人全职4人,无产品经理


 关键数据(1年半内)
  运营质量:1年半之内   0 运营事故
  使用情况:SDK累计支持项目502个,云服务累计支撑项目374个
  效率提升:单个项目复杂度大幅度提高的前提下,互动广告开发团队
  支持项目数同比增长60%,支撑金额上涨94%(2012H1人力无增
  长)
  难度降低:单项目平均外包费用同比下降35%


 2012上半年数据(半年内,仅列举本部门应用)
  支撑70个抽奖活动,设置421万个奖品
  支撑11个兑换码活动,共计162亿兑换码(行业之最)
   项目背景
   解决方案与实践
   效果对比与RIO分析
   举例介绍
   历程与启示
举例:抽奖
 一个常见的抽奖,一般步骤为
  检查抽奖资格——积分/次数
  检查奖品数量——品种/分布
  检查中奖限制——频率/次数
  随机中奖,更新奖品数量——并发控制


 抽奖的准备工作
  奖品数量——N种奖品,数量各异
  奖品分布——时段/日期


 抽奖的运营
  数据导出
未使用风车的抽奖逻辑代码
使用了风车的抽奖逻辑代码
HOW?
   项目背景
   解决方案与实践
   效果对比与RIO分析
   举例介绍
   历程与启示
一些历程
 团队磨合问题
 季度会 + 双周会
 SDK与云服务的对接生硬
 引入运营平台
 各类运行环境的开发与调试问题
 支持各类环境,支持外包访问
 从逻辑服务到安全与运营服务
 引入各类安全相关服务与运营相关服务
 收到了报警却不知道出问题的原因
 从提供服务到提供解决方案
一些启示
 每种开发语言都有自己的长处和短处,与其费尽心思补齐
  短处,不如另辟蹊径
 服务云端化不仅可以提升效率,更重要的是服务可控,包
  括服务部署、监控告警、版本升级、运营分析等
 运营可视化让开发和运维人员更直观的配置各类服务、洞
  悉系统状态,及早发现隐患,从而提升运营质量
 互联网产业提供的是服务,必须建立有效的立体监控体系,
  以保证服务质量
Q&A




      QQ:539300111
      Weibo:黑手如来

Weitere ähnliche Inhalte

Was ist angesagt?

新浪微博平台与安全架构
新浪微博平台与安全架构新浪微博平台与安全架构
新浪微博平台与安全架构
n716
 

Was ist angesagt? (11)

我的互联网运维理论与实践
我的互联网运维理论与实践我的互联网运维理论与实践
我的互联网运维理论与实践
 
CBAP商業分析讀書會 20140218 CH13
CBAP商業分析讀書會 20140218 CH13CBAP商業分析讀書會 20140218 CH13
CBAP商業分析讀書會 20140218 CH13
 
Cloud ready v mware 云计算解决方案
Cloud ready   v mware 云计算解决方案Cloud ready   v mware 云计算解决方案
Cloud ready v mware 云计算解决方案
 
虚拟化与云计算
虚拟化与云计算虚拟化与云计算
虚拟化与云计算
 
新浪微博平台与安全架构
新浪微博平台与安全架构新浪微博平台与安全架构
新浪微博平台与安全架构
 
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
 
Heat在企业中的应用实践
Heat在企业中的应用实践Heat在企业中的应用实践
Heat在企业中的应用实践
 
大规模在线服务的高可用性保障
大规模在线服务的高可用性保障大规模在线服务的高可用性保障
大规模在线服务的高可用性保障
 
Mocha Bsm
Mocha BsmMocha Bsm
Mocha Bsm
 
美团点评技术沙龙13-前端工程化开发方案app-proto介绍
美团点评技术沙龙13-前端工程化开发方案app-proto介绍美团点评技术沙龙13-前端工程化开发方案app-proto介绍
美团点评技术沙龙13-前端工程化开发方案app-proto介绍
 
大型 Web Application 轉移到 微服務的經驗分享
大型 Web Application 轉移到微服務的經驗分享大型 Web Application 轉移到微服務的經驗分享
大型 Web Application 轉移到 微服務的經驗分享
 

Andere mochten auch

人人网服务化与架构变迁V3
人人网服务化与架构变迁V3人人网服务化与架构变迁V3
人人网服务化与架构变迁V3
drewz lin
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
drewz lin
 
云存储系统设计
云存储系统设计云存储系统设计
云存储系统设计
drewz lin
 
Automated tests workshop
Automated tests workshopAutomated tests workshop
Automated tests workshop
drewz lin
 
Top100summit用友 池建强-构建企业级应用开发平台
Top100summit用友 池建强-构建企业级应用开发平台Top100summit用友 池建强-构建企业级应用开发平台
Top100summit用友 池建强-构建企业级应用开发平台
drewz lin
 
Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民
drewz lin
 
Agile2012 rev4.pptx
Agile2012 rev4.pptxAgile2012 rev4.pptx
Agile2012 rev4.pptx
drewz lin
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
drewz lin
 
T4 淘宝私有云
T4 淘宝私有云T4 淘宝私有云
T4 淘宝私有云
drewz lin
 
Agile 2012 the 0-page agile test plan - paul carvalho
Agile 2012   the 0-page agile test plan - paul carvalhoAgile 2012   the 0-page agile test plan - paul carvalho
Agile 2012 the 0-page agile test plan - paul carvalho
drewz lin
 
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择 Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
drewz lin
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentation
drewz lin
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
drewz lin
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13
drewz lin
 
Mobile app security
Mobile app securityMobile app security
Mobile app security
drewz lin
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
drewz lin
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践
drewz lin
 

Andere mochten auch (17)

人人网服务化与架构变迁V3
人人网服务化与架构变迁V3人人网服务化与架构变迁V3
人人网服务化与架构变迁V3
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
云存储系统设计
云存储系统设计云存储系统设计
云存储系统设计
 
Automated tests workshop
Automated tests workshopAutomated tests workshop
Automated tests workshop
 
Top100summit用友 池建强-构建企业级应用开发平台
Top100summit用友 池建强-构建企业级应用开发平台Top100summit用友 池建强-构建企业级应用开发平台
Top100summit用友 池建强-构建企业级应用开发平台
 
Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民
 
Agile2012 rev4.pptx
Agile2012 rev4.pptxAgile2012 rev4.pptx
Agile2012 rev4.pptx
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
 
T4 淘宝私有云
T4 淘宝私有云T4 淘宝私有云
T4 淘宝私有云
 
Agile 2012 the 0-page agile test plan - paul carvalho
Agile 2012   the 0-page agile test plan - paul carvalhoAgile 2012   the 0-page agile test plan - paul carvalho
Agile 2012 the 0-page agile test plan - paul carvalho
 
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择 Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
Top100summit 支付宝-贺三元-支付宝无线快捷支付的抉择
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentation
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13
 
Mobile app security
Mobile app securityMobile app security
Mobile app security
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践
 

Ähnlich wie Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境

01.ofm11g概览
01.ofm11g概览01.ofm11g概览
01.ofm11g概览
Meng He
 
深入研究雲端應用程式平台-AppFabric
深入研究雲端應用程式平台-AppFabric深入研究雲端應用程式平台-AppFabric
深入研究雲端應用程式平台-AppFabric
John Chang
 
网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维
colderboy17
 
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 061103 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
ikewu83
 
企业系统商务智能设计
企业系统商务智能设计企业系统商务智能设计
企业系统商务智能设计
George Ang
 
腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松
Michael Zhang
 
腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松
areyouok
 
Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区
benbenhappy
 
美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
Jiang Zhu
 
Solution apc 4.0
Solution apc 4.0Solution apc 4.0
Solution apc 4.0
ahnlabchina
 

Ähnlich wie Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境 (20)

新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜
 
E tom ngoss规范及siebel系统在电信行业的应用 陈永林
E tom ngoss规范及siebel系统在电信行业的应用 陈永林E tom ngoss规范及siebel系统在电信行业的应用 陈永林
E tom ngoss规范及siebel系统在电信行业的应用 陈永林
 
01.ofm11g概览
01.ofm11g概览01.ofm11g概览
01.ofm11g概览
 
Teched 2012 60分钟构建私有云
Teched 2012 60分钟构建私有云Teched 2012 60分钟构建私有云
Teched 2012 60分钟构建私有云
 
深入研究雲端應用程式平台-AppFabric
深入研究雲端應用程式平台-AppFabric深入研究雲端應用程式平台-AppFabric
深入研究雲端應用程式平台-AppFabric
 
网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维
 
网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维网易 李弈远 网易服务集成框架的构建与运维
网易 李弈远 网易服务集成框架的构建与运维
 
Zh120226techparty velocity2011-review
Zh120226techparty velocity2011-reviewZh120226techparty velocity2011-review
Zh120226techparty velocity2011-review
 
达尔文信息云平台
达尔文信息云平台达尔文信息云平台
达尔文信息云平台
 
Java@taobao
Java@taobaoJava@taobao
Java@taobao
 
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 061103 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
 
企业系统商务智能设计
企业系统商务智能设计企业系统商务智能设计
企业系统商务智能设计
 
腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松
 
腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松腾讯大讲堂30 运维工具让你的开发运营更轻松
腾讯大讲堂30 运维工具让你的开发运营更轻松
 
SWsoft_Prim@Telecom
SWsoft_Prim@TelecomSWsoft_Prim@Telecom
SWsoft_Prim@Telecom
 
Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区
 
美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
 
Solution apc 4.0
Solution apc 4.0Solution apc 4.0
Solution apc 4.0
 
数据采集中间件技术交流
数据采集中间件技术交流数据采集中间件技术交流
数据采集中间件技术交流
 
Big Data Technology - Cloud Computing
Big Data Technology - Cloud ComputingBig Data Technology - Cloud Computing
Big Data Technology - Cloud Computing
 

Mehr von drewz lin

Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
drewz lin
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrich
drewz lin
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
drewz lin
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
drewz lin
 
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
drewz lin
 
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
drewz lin
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
drewz lin
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansen
drewz lin
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
drewz lin
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
drewz lin
 
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martinAppsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martin
drewz lin
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowasp
drewz lin
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
drewz lin
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013
drewz lin
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈
drewz lin
 
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu
drewz lin
 
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)
drewz lin
 
天猫后端技术架构优化实践
天猫后端技术架构优化实践天猫后端技术架构优化实践
天猫后端技术架构优化实践
drewz lin
 
天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电
drewz lin
 
互联网海量运维 20130807
互联网海量运维 20130807互联网海量运维 20130807
互联网海量运维 20130807
drewz lin
 

Mehr von drewz lin (20)

Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrich
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
 
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
 
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansen
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
 
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martinAppsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martin
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowasp
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈
 
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu
 
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)
 
天猫后端技术架构优化实践
天猫后端技术架构优化实践天猫后端技术架构优化实践
天猫后端技术架构优化实践
 
天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电
 
互联网海量运维 20130807
互联网海量运维 20130807互联网海量运维 20130807
互联网海量运维 20130807
 

Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境

  • 1. 服务化与体系化 解决大量定制小项目开发困境 腾讯/广告平台产品部/互动广告研发中心 周健 Version: 2.1
  • 2. 项目背景  解决方案与实践  效果对比与RIO分析  举例介绍  历程与启示
  • 3. 项目的背景  项目量:不断增加的活动开发项目,人力无法随之同比例增长  复杂度:广告主的要求越来越高,往往伴随富媒体广告、社交广告等多种形式  高性能:随着活动规模的增长,弱海量服务的需求随之增加  复用性:三地开发组、外包的开发框架不统一,无法最大化复用成果,也无法共享外包资源  可运营:互动活动面对开发、测试、运维、监控、动态运营等方面需要『服务云端化的需求』
  • 4. 最初的开发方式与弊端  开发方式:LAMP + PHP组件  弊端  部署与发布  运营与升级  监控与告警  性能与并发控制  敏感功能的审查与外包  运营数据集中分析  。。。
  • 5. 项目背景  解决方案与实践  效果对比与RIO分析  举例介绍  历程与启示
  • 6. 解决方案 SDK Server Monitor OSS
  • 7. 解决方案 – 系统的组成 风车应用平台(SDK) 风车管理平台(OSS) 标准组件 FILTER集合 开发运营工具 业务统计 运营支撑 SDK框架与基础库(内置支撑系统API) 开发调试 系统管理 风车支撑平台(Server) 旁路体系 接口机群(内置路由策略) 与其他 存储类服务 逻辑类服务 接口类服务 运营类服务 染色机制 个人信息 抽奖类(2) 兑换码类(2) 即通代理(5) 网管上报 备份机制 活动注册 作品上传类(3) 计数器类(3) 数平代理 恶意检测 同步机制 历史参与活动 Bitmap服务 票据服务 空间代理(4) 统一日志服务 灰度机制 积分存储 发奖服务 秒杀服务 图标点亮(4) 服务质量监控 异步队列 UDS/IP服务 同步转发(4) DB过载保护 通知系统 Cache/DB
  • 9. SDK特点  标准MVC实现  实现了目前流行MVC框架的多数特性,包括FILTER、LAYOUT、 SLOT、ORM等)  提供异步消息队列的特性,使得PHP CGI异步化成为可能  内置监控上报、运维安全、测试模式等特性  收集URI用于安全扫描(测试环境)  收集SQL语句用于性能分析(测试环境)  提供DEBUG BAR用于测试发现问题(测试环境)  对PHP SDK重要的监控点自动分项目进行数据上报  内置云服务API及其相关容灾特性  统一框架与类库  所有活动、产品的统一开发框架  内部开发与外包统一的框架
  • 11. 云服务特点  按SET统一进行部署和扩容,服务之间松耦合  统一的无状态接口层屏蔽后台内部实现  灵活的路由机制方便扩容、迁移与隔离服务  支持按照项目、用户ID、命令ID进行路由  支持常规模式与高性能模式  提供染色机制、日志中心服务以快速定位问题  高性能、插片式后台服务
  • 13. 运营平台特点  后台服务可视化  云服务管理与资源分配  云服务的项目配置  云服务的状态查看与数据查询  云服务的报表查看  数据分析与报表展示  云服务接口与公司其他接口调试  SDK配置管理与版本控制
  • 16. 监控平台特点  多维度监控(项目/属性/SET/IP等)  项目自动接入  与SDK集成,接入SDK的所有项目也自动接入SQM,无须申请和 配置  SDK中所有的关键点接入SQM  SDK访问量,访问耗时  DB访问量,访问耗时  云服务访问量,访问耗时  从项目维度,从时间维度,从属性维度进行查看  对项目做PROFILING分析  对项目运营质量评分与排行功能
  • 17. 项目背景  解决方案与实践  效果对比与RIO分析  举例介绍  历程与启示
  • 18. 风车使用前后对比 - 开发模式 使用风车前 使用风车后 开发模式 php+memcache+db php+云服务 需求变更操作* 修改代码/迁移数据/重新发布 OSS上修改配置 易用性 编写代码工作量大 自动生成框架/大量辅助工具/云服务 复用性 copy代码 后台服务化 高 低,可外包 对开发人员要求 (进而导致项目外包的风险高) (常用服务/核心服务/敏感服务云端化) 系统稳定性 一般 非常好  “开放是一种能力”。对于项目密集型的团队,外包是个不错的节约成本的选择。尤其 在每个月项目量经常变化的情况下。
  • 19. 风车使用前后对比 - 性能、运营与安全 使用风车前 使用风车后 性能瓶颈 db瓶颈(A类单机2k/s) 云服务(B类单机50k/s) 请求突发 db大规模扩容和数据迁移 修改配置切换云服务至专区 监控和预警 无(无机制和无实现手段) 系统做自动监控和预警* 过载保护 无 内置DB过载保护 安全性 实现代价大/性能差 提供恶意检测服务和各类web安全机制  在业务变的更复杂、项目量翻倍的情况下,基础告警从2010H2的“日”级别降低到 2011H2的“双周”级别  兑换码、抽奖、投票、计数等云服务 0 故障  监控系统改变了活动开发人员的“运营意识”
  • 20. 风车项目的部分运营数据  投入人力:开发人员兼职3人全职4人,无产品经理  关键数据(1年半内)  运营质量:1年半之内 0 运营事故  使用情况:SDK累计支持项目502个,云服务累计支撑项目374个  效率提升:单个项目复杂度大幅度提高的前提下,互动广告开发团队 支持项目数同比增长60%,支撑金额上涨94%(2012H1人力无增 长)  难度降低:单项目平均外包费用同比下降35%  2012上半年数据(半年内,仅列举本部门应用)  支撑70个抽奖活动,设置421万个奖品  支撑11个兑换码活动,共计162亿兑换码(行业之最)
  • 21. 项目背景  解决方案与实践  效果对比与RIO分析  举例介绍  历程与启示
  • 22. 举例:抽奖  一个常见的抽奖,一般步骤为  检查抽奖资格——积分/次数  检查奖品数量——品种/分布  检查中奖限制——频率/次数  随机中奖,更新奖品数量——并发控制  抽奖的准备工作  奖品数量——N种奖品,数量各异  奖品分布——时段/日期  抽奖的运营  数据导出
  • 26. 项目背景  解决方案与实践  效果对比与RIO分析  举例介绍  历程与启示
  • 27. 一些历程  团队磨合问题 季度会 + 双周会  SDK与云服务的对接生硬 引入运营平台  各类运行环境的开发与调试问题 支持各类环境,支持外包访问  从逻辑服务到安全与运营服务 引入各类安全相关服务与运营相关服务  收到了报警却不知道出问题的原因 从提供服务到提供解决方案
  • 28. 一些启示  每种开发语言都有自己的长处和短处,与其费尽心思补齐 短处,不如另辟蹊径  服务云端化不仅可以提升效率,更重要的是服务可控,包 括服务部署、监控告警、版本升级、运营分析等  运营可视化让开发和运维人员更直观的配置各类服务、洞 悉系统状态,及早发现隐患,从而提升运营质量  互联网产业提供的是服务,必须建立有效的立体监控体系, 以保证服务质量
  • 29. Q&A QQ:539300111 Weibo:黑手如来