年度回顾:百度乔梁谈持续交付与 DevOps

  • 贾国清

2012 年 2 月 5 日

话题:方法论持续集成百度DevOps语言 & 开发文化 & 方法

在刚刚结束的第 22 期百度技术沙龙中,百度项目管理部乔梁(@乔梁 QL)来到沙龙现场,并就持续交付、持续集成和 DevOps 等话题分享自己的经验,并对国内的发展情况给予了展望。

1. 创业经历

十年前我也曾自己创业,虽然当时做得还算不错,但慢慢发现自己不是一个能把事业和生活安排得很好的人,于是决定继续回来打工。对于从事软件开发,估计在座的各位 90% 以上都与互联网行业有关,我属于不小心闯进了这样的一家互联网公司里面的这种。

2. 持续集成与 DevOps

我在项目管理部中的一项工作就是保证产品快速上线。持续集成在近十年来发展迅速。还记得 09 年的时候我做过一次演讲,当时也是类似今天这样的规模(260 人左右),当我问到有多少人知道持续集成时,只有三个人举手,今天来看已经占到了半数之多,所以从规模上可以看出,持续集成发展的速度还是相当快的。那么持续集成到底是什么,对一个团队来说,它是开发人员和测试人员之间的一种沟通和实践,以及团队间如何合作。随着互联网的快速发展。如何将开发好的软件快速部署上线,如何完成最后一公里,也变得越来越重要,越来越明显。我们的软件研发周期在不断的缩短,如何使其更加快速的被用户使用,越来越成为一个焦点。在 08 年,在欧洲的软件行业慢慢兴起了一个名词——DevOps,实际上,DevOps 还没有准确的定义,网上存在着各种各样的说法,我们甚至也可以将 DevOps 理解为是一种运动,那么 DevOps 能为我们解决什么问题呢?它可以帮助我们的交付团队和运营团队进行协作,保证软件更加快速的交付,得到用户的反馈。

3. 持续集成经验分享

有些公司做得非常不错,举一个例子,在国外有家不太大的互联网游戏公司,他们的研发团队只有 50 人,但是每天可以实现 50 次的部署。可能会有人问,为什么每天能做 50 次的部署?其中一个最基本的思想是 Learning From User,翻译过来就是从用户中学习。这其中的每一次改动,都会经过一系列的快速验证,最后再部署到线上。开发团队能够在这四五台机器上收集到用户的相关数据,然后通过对数据的分析结果进行参照,便可及时地调整产品的方向。这个公司叫IMVU。大家可以去查一一个叫阿凡达游戏网站,属于游戏类型的社交网站。他们从代码 Check in 到上线只需要半个小时左右,这就是为什么他们能够在每天做 50 次部署的原因,当然并不是说所有的全都部署,他也是之前那种规模,互联网行业这种灰度部署。我知道这个是本身作为一种方式,那么这个叫持续部署,今年 10 月份我翻译了叫持续交付的书,里面也提到了很多很多的实践,我想这些实践对我们软件的快速交付,具有一定的借鉴意义,目前我做得工作也和这个相关。在百度也是在不同的产品线,帮助团队能够做到快速的交互。

4. 未来的展望

将来我觉得持续集成仍会是一个不可否认的方向,10 年前的企业级软件开发,有的经过半年的时间产品才上线,现在互联网的发展如此之快,漫长的上线周期俨然已经成为了历史。甚至包括一些基础软件的发布频率,发布周期也变得越来越快,所以我认为,将来在持续集成、在持续交付方面,国内会有一个长足的发展。

更多乔梁发布的文章请见:乔梁在 InfoQ 的文章

相关报道

年度回顾:开源专家姜太文谈开源硬件

年度回顾:知名博客冯大辉的技术感悟

年度回顾:酷壳陈皓谈搜索和移动互联网

年度回顾:海豚浏览器刘铁锋谈 Web App 热点

年度回顾:禅道王春生谈开源软件趋势

DevOps 相关文章:

测试自动化和持续交付

不同技术团队的配合问题及 DevOps

建设 DevOps 能力,实现业务敏捷

DevOps,让持续交付成为可能

方法论持续集成百度DevOps语言 & 开发文化 & 方法