SlideShare a Scribd company logo
1 of 34
Download to read offline
豆瓣阅读中的持续集成/发布实践




     豆瓣 孙毅
豆瓣阅读
豆瓣阅读是
     豆瓣读书推出的数字阅读服务
•  拥有质量一流的内容
•  支持Web、iPad、iPhone、 Android、
   Kindle等多种设备
•  提供极佳的阅读体验
•  社会化阅读
Why CI?
•  减少风险

•  减少重复过程

•  任意时间,地点可部署

•  可见性

•  信心
场景1-开发
 本地服务起
 不来了?
               提交了才发
               现问题?

依赖!


      开发服务器网速赶不上手速…
问题分析
•  开发环境复杂且不统一

•  本地构建困难

•  本地没有快速反馈机制
解决方案
•  本地的统一的虚拟开发环境
•  订阅上游依赖变更,用puppet管理

•  大家一起贡献模块

•  基准开发工具包

•  简单便捷的本地ci
订阅上游依赖变更
•  必要性
 –  包依赖开发环境必须和线上环境同步升级
 –  公司内部的服务依赖,lib依赖版本升级


•  现状:RSS订阅依赖更新消息
 –  不是很先进,但是还算可靠
大家一起贡献模块
•  必要性
 –  项目众多,每一个项目依赖和工具不同


•  现状:
 –  fork,pull-request
 –  Puppet主文件中用注释进行特性开关
基准开发工具包
•  工具的种类/版本

•  工具的配置

•  现状:
 –  静态检查
 –  单元测试
 –  Web测试
简单便捷的本地集成(1)
•  pylint/jshint

   –  基准开发工具包包含工具
   –  随项目代码进行检查项配置
   –  git pre-commit hook
简单便捷的本地集成(2)
•  unittest/apitest

  –  不干扰本地开发服务
  –  coverage
  –  nosy/tag/etc..
简单便捷的本地集成(3)
•  web测试

 –  headless
 –  webdriver
 –  js error collection
 –  html error collection
 –  xunit
对比

     before	
             now	

   只能在服务器开发	
       可迁移/可定制的完整本地开发环境	



先提交,再跑集成测试,改bug	
     本地先进行测试,再提交	



 web测试只能在中心服务器	
         本地web测试
场景2-提交
 好大一个diff!
                    这功能谁
                    搞挂的?



懒得review

               合入的时候咋
               办啊。。
问题分析
•  review流于形式

•  分支合并成本高

•  问题定位困难
解决方案
•  git / pull-request
•  git分支的切换和合并成本极低

•  以pull-request作为review单元
  –  鼓励更多提交,强制review后合并
  –  review覆盖面,针对性和参与度高


•  几乎每次merge都会触发构建
  –  pull-request的粒度保证问题追查较容易
  –  通过构建job通知提交作者
对比
      before	
                   now	

  定期review,覆盖面小	
        每个pull-request必须review	


  review意⻅见很难定位到行       review精确到行,提醒机制完善
       响应也不及时	
                修复一目了然	

                              天天合并/提交
   写一大堆再合并提交	
        (5个月,1275个pull-request,2725个
                          review意⻅见,全体参与)	

                        几乎每个构建只有1-2个merge
构建diff太大,出问题不知道谁的	
                          (5个月,900次构建)
场景3-构建
    merge把主
    干搞挂啦          CI服务器又
                  排队。。
跑一遍要
20分钟!

                  跑了15分钟
                  才告诉我没
 大家都喜欢            通过 : (
 下班前提交
问题分析
•  分支集成不足

•  ci suite反馈速度慢

•  无法获取阶段结果

•  持续集成服务器资源问题
解决方案(1)
•  基于opening pull request的分支持续集成
解决方案(2)
•  构建链/测试分级
                             pylint	

                 lint	
      jshint	

                            yuicheck	

                             unitest	

                  ut	
       apitest	
     core	
                           servicetest	

                              core	
               webtest	
                               full	
               service-
                sync	
               release-     staging-
                  tag	
    regression	
    online
解决方案(3)
•  冗余计算资源利用
 –  虚拟机开启jenkins-slave模块即接入ci系统
 –  控制node的tag来分配接入的job
对比
      before	
                  now	
                        活动中的pull-request分支均有自己
中心ci只跑主干代码的ci suite	
                         的ci suite,结果更新在pr记录中	

                        任务分拆并行化,关键任务11s/42s
     静态检查4min	
                            后续任务1min48s	

                        大家贡献slave,大大提高了突然峰值
所有任务在中心服务器上排队
                        下的执行速度,自己的任务已经可以
   “下午4点的困扰”	
                           由自己的slave全部消化	

                          先跑核心,再dailybuild全量
 ci suite中的job过大过⻓长	
                           提交构建控制在10min
场景4-交付

上哪个版本?
                  怕出线上问
                  题啊…

XX不在,怎
么上线来着?
手抖了。。
解决方案(1)
•  继承ci suite的版本状态监测/标记

 -  提交构建

 -  打包打tag
解决方案(2)
•  特性开关

 -  重大变更 均使用feature-switch

 -  switch 多种状态,可在线切换
解决方案(3)
•  直接从ci集成自动化上线

 -  从ci suite传入可上线的tag

 -  由jenkins job自动执行远程脚本

 -  直接点击按钮触发
加入豆瓣

•  测试工程师/测试开发工程师

•  移动测试开发工程师

•  更多豆瓣职位

•  team@douban.com
Q&A

您也可以通过以下方式找到我:
豆瓣主页: http://www.douban.com/people/tachikoma/
Email: sunyi@douban.com
Thanks

More Related Content

What's hot

Redux+react js
Redux+react jsRedux+react js
Redux+react js國昭 張
 
使用 ES 6/7 特性开发 Node 项目
使用 ES 6/7 特性开发 Node 项目使用 ES 6/7 特性开发 Node 项目
使用 ES 6/7 特性开发 Node 项目Welefen Lee
 
前端编译平台
前端编译平台前端编译平台
前端编译平台Welefen Lee
 
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践美团点评技术团队
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAEq3boy
 
JCConf2016 Jenkins Pipeline
JCConf2016 Jenkins PipelineJCConf2016 Jenkins Pipeline
JCConf2016 Jenkins PipelineChing Yi Chan
 
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事Chieh (Jack) Yu
 
性能优化
性能优化性能优化
性能优化Lu Wei
 
Linux Container Introduction
Linux Container IntroductionLinux Container Introduction
Linux Container Introduction家弘 周
 
Ruby 的快与慢
Ruby 的快与慢Ruby 的快与慢
Ruby 的快与慢vincent253
 
大家都愛的 VMware - VMware 簡單介紹
大家都愛的 VMware - VMware 簡單介紹大家都愛的 VMware - VMware 簡單介紹
大家都愛的 VMware - VMware 簡單介紹Fan-Yu Kuan
 
Build your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by stepBuild your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by stepBryan Yang
 
利用Nchan快速打造即時通知系統
利用Nchan快速打造即時通知系統利用Nchan快速打造即時通知系統
利用Nchan快速打造即時通知系統herb herb
 
Cloud Foundry Introduction
Cloud Foundry IntroductionCloud Foundry Introduction
Cloud Foundry Introduction家弘 周
 
InnoDB并发控制在密集型并发更新下的问题
InnoDB并发控制在密集型并发更新下的问题InnoDB并发控制在密集型并发更新下的问题
InnoDB并发控制在密集型并发更新下的问题Hui Liu
 
Windows Container 101: dotNET, Container, Kubernetes
Windows Container 101: dotNET, Container, KubernetesWindows Container 101: dotNET, Container, Kubernetes
Windows Container 101: dotNET, Container, KubernetesWill Huang
 
Log experience
Log experienceLog experience
Log experience宗志 陈
 
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探美团点评技术团队
 
企业应用架构:模块化、微服务与 Linux 容器技术
企业应用架构:模块化、微服务与 Linux 容器技术企业应用架构:模块化、微服务与 Linux 容器技术
企业应用架构:模块化、微服务与 Linux 容器技术Lifan Yang
 
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James LiuDrupal Taiwan
 

What's hot (20)

Redux+react js
Redux+react jsRedux+react js
Redux+react js
 
使用 ES 6/7 特性开发 Node 项目
使用 ES 6/7 特性开发 Node 项目使用 ES 6/7 特性开发 Node 项目
使用 ES 6/7 特性开发 Node 项目
 
前端编译平台
前端编译平台前端编译平台
前端编译平台
 
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践
美团点评技术沙龙06 - 滴滴移动端测试解耦工具实践
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAE
 
JCConf2016 Jenkins Pipeline
JCConf2016 Jenkins PipelineJCConf2016 Jenkins Pipeline
JCConf2016 Jenkins Pipeline
 
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事
 
性能优化
性能优化性能优化
性能优化
 
Linux Container Introduction
Linux Container IntroductionLinux Container Introduction
Linux Container Introduction
 
Ruby 的快与慢
Ruby 的快与慢Ruby 的快与慢
Ruby 的快与慢
 
大家都愛的 VMware - VMware 簡單介紹
大家都愛的 VMware - VMware 簡單介紹大家都愛的 VMware - VMware 簡單介紹
大家都愛的 VMware - VMware 簡單介紹
 
Build your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by stepBuild your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by step
 
利用Nchan快速打造即時通知系統
利用Nchan快速打造即時通知系統利用Nchan快速打造即時通知系統
利用Nchan快速打造即時通知系統
 
Cloud Foundry Introduction
Cloud Foundry IntroductionCloud Foundry Introduction
Cloud Foundry Introduction
 
InnoDB并发控制在密集型并发更新下的问题
InnoDB并发控制在密集型并发更新下的问题InnoDB并发控制在密集型并发更新下的问题
InnoDB并发控制在密集型并发更新下的问题
 
Windows Container 101: dotNET, Container, Kubernetes
Windows Container 101: dotNET, Container, KubernetesWindows Container 101: dotNET, Container, Kubernetes
Windows Container 101: dotNET, Container, Kubernetes
 
Log experience
Log experienceLog experience
Log experience
 
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
 
企业应用架构:模块化、微服务与 Linux 容器技术
企业应用架构:模块化、微服务与 Linux 容器技术企业应用架构:模块化、微服务与 Linux 容器技术
企业应用架构:模块化、微服务与 Linux 容器技术
 
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu
[DCTPE2011] 8) 多伺服器/高效能的Drupal 主機解決方案--James Liu
 

Viewers also liked

Gloss_Restaurants_setevoy
Gloss_Restaurants_setevoyGloss_Restaurants_setevoy
Gloss_Restaurants_setevoyElmira_Gloss
 
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...Colin JG Miles
 
Qual è la piattaforma Social per il tuo business?
Qual è la piattaforma Social per il tuo business?Qual è la piattaforma Social per il tuo business?
Qual è la piattaforma Social per il tuo business?Arianna PRoject
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosRiccyortiz
 
No Sql Bigdata Drone
No Sql Bigdata DroneNo Sql Bigdata Drone
No Sql Bigdata DroneDony Riyanto
 
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. Villarcayo
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. VillarcayoProgama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. Villarcayo
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. VillarcayoCEDER Merindades
 
Perubahan dan pengembangan organisasi
Perubahan dan pengembangan organisasiPerubahan dan pengembangan organisasi
Perubahan dan pengembangan organisasiainitavi
 
Bible Contradictions: How Did Saul Die?
Bible Contradictions: How Did Saul Die?Bible Contradictions: How Did Saul Die?
Bible Contradictions: How Did Saul Die?DennisFyksen
 
презентация. антистрессовые способы защиты. левченко л. ю.
презентация. антистрессовые способы защиты.  левченко л. ю.презентация. антистрессовые способы защиты.  левченко л. ю.
презентация. антистрессовые способы защиты. левченко л. ю.virtualtaganrog
 
Desain dan struktur organisasi
Desain dan struktur organisasiDesain dan struktur organisasi
Desain dan struktur organisasiainitavi
 
Snow Hiking: What Gear To Bring
Snow Hiking: What Gear To BringSnow Hiking: What Gear To Bring
Snow Hiking: What Gear To BringJason Oh
 
Top 10 infrastructure cover letter tips
Top 10 infrastructure cover letter tipsTop 10 infrastructure cover letter tips
Top 10 infrastructure cover letter tipsinfrastructurecareer
 
Top 14 infrastructure interview tips
Top 14 infrastructure interview tipsTop 14 infrastructure interview tips
Top 14 infrastructure interview tipsinfrastructurecareer
 
Organización administrativa en el incanato.
Organización administrativa en el incanato.Organización administrativa en el incanato.
Organización administrativa en el incanato.diegoalexei
 
5 Steps to a Stellar Presentation
5 Steps to a Stellar Presentation5 Steps to a Stellar Presentation
5 Steps to a Stellar PresentationMolly Fried
 

Viewers also liked (20)

Gloss_Restaurants_setevoy
Gloss_Restaurants_setevoyGloss_Restaurants_setevoy
Gloss_Restaurants_setevoy
 
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...
The Hard Truths Behind Customer Acquisition - MoMo Singapore Panel slides dur...
 
7 8 kl slaidsou
7 8 kl slaidsou7 8 kl slaidsou
7 8 kl slaidsou
 
Top 12 infrastructure resume tips
Top 12 infrastructure resume tipsTop 12 infrastructure resume tips
Top 12 infrastructure resume tips
 
Qual è la piattaforma Social per il tuo business?
Qual è la piattaforma Social per il tuo business?Qual è la piattaforma Social per il tuo business?
Qual è la piattaforma Social per il tuo business?
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
No Sql Bigdata Drone
No Sql Bigdata DroneNo Sql Bigdata Drone
No Sql Bigdata Drone
 
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. Villarcayo
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. VillarcayoProgama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. Villarcayo
Progama XXX Jornadas Culturales-Deportivas Marzo-Junio 2013. Villarcayo
 
DASHDASH's Profile
DASHDASH's ProfileDASHDASH's Profile
DASHDASH's Profile
 
Equipment design ok
Equipment design okEquipment design ok
Equipment design ok
 
Perubahan dan pengembangan organisasi
Perubahan dan pengembangan organisasiPerubahan dan pengembangan organisasi
Perubahan dan pengembangan organisasi
 
Bible Contradictions: How Did Saul Die?
Bible Contradictions: How Did Saul Die?Bible Contradictions: How Did Saul Die?
Bible Contradictions: How Did Saul Die?
 
презентация. антистрессовые способы защиты. левченко л. ю.
презентация. антистрессовые способы защиты.  левченко л. ю.презентация. антистрессовые способы защиты.  левченко л. ю.
презентация. антистрессовые способы защиты. левченко л. ю.
 
Desain dan struktur organisasi
Desain dan struktur organisasiDesain dan struktur organisasi
Desain dan struktur organisasi
 
VISHALYAGNA MARMA
VISHALYAGNA MARMAVISHALYAGNA MARMA
VISHALYAGNA MARMA
 
Snow Hiking: What Gear To Bring
Snow Hiking: What Gear To BringSnow Hiking: What Gear To Bring
Snow Hiking: What Gear To Bring
 
Top 10 infrastructure cover letter tips
Top 10 infrastructure cover letter tipsTop 10 infrastructure cover letter tips
Top 10 infrastructure cover letter tips
 
Top 14 infrastructure interview tips
Top 14 infrastructure interview tipsTop 14 infrastructure interview tips
Top 14 infrastructure interview tips
 
Organización administrativa en el incanato.
Organización administrativa en el incanato.Organización administrativa en el incanato.
Organización administrativa en el incanato.
 
5 Steps to a Stellar Presentation
5 Steps to a Stellar Presentation5 Steps to a Stellar Presentation
5 Steps to a Stellar Presentation
 

Similar to PyCon China 2012 孙毅

Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)
Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)
Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)JoXuZi
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 
持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110Qiao Liang
 
张松国 腾讯微博架构介绍08
张松国 腾讯微博架构介绍08张松国 腾讯微博架构介绍08
张松国 腾讯微博架构介绍08drewz lin
 
企業導入微服務實戰 - updated
企業導入微服務實戰 - updated企業導入微服務實戰 - updated
企業導入微服務實戰 - updatedPaul Chao
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationnetdbncku
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践drewz lin
 
构建可扩展的微博系统
构建可扩展的微博系统构建可扩展的微博系统
构建可扩展的微博系统lonegunman
 
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践Web请求异步处理和海量数据即时分析在淘宝开放平台的实践
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践mysqlops
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验colderboy17
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验guiyingshenxia
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合Qiangning Hong
 
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveTrack2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveOpenCity Community
 
1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计RolfZhang
 
為什麼 App 卡卡的
為什麼 App 卡卡的為什麼 App 卡卡的
為什麼 App 卡卡的鈺翔 林
 

Similar to PyCon China 2012 孙毅 (20)

Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)
Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)
Scrum gathering 2012 Shanghai_精益与持续改进分会场演讲话题: 大型企业ci平台建设和实施分享(陈小光)
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 
持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110
 
张松国 腾讯微博架构介绍08
张松国 腾讯微博架构介绍08张松国 腾讯微博架构介绍08
张松国 腾讯微博架构介绍08
 
企業導入微服務實戰 - updated
企業導入微服務實戰 - updated企業導入微服務實戰 - updated
企業導入微服務實戰 - updated
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
A
AA
A
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践
 
构建可扩展的微博系统
构建可扩展的微博系统构建可扩展的微博系统
构建可扩展的微博系统
 
java title
java titlejava title
java title
 
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践Web请求异步处理和海量数据即时分析在淘宝开放平台的实践
Web请求异步处理和海量数据即时分析在淘宝开放平台的实践
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
Zabbix in PPTV
Zabbix in PPTVZabbix in PPTV
Zabbix in PPTV
 
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合
 
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveTrack2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
 
Xpp
XppXpp
Xpp
 
1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计
 
為什麼 App 卡卡的
為什麼 App 卡卡的為什麼 App 卡卡的
為什麼 App 卡卡的
 

PyCon China 2012 孙毅