facebook应用开发_这就是Facebook开发和部署软件的方式。 你应该在乎吗?

facebook应用开发

在Facebook上的持续部署不是持续部署

Facebook开发人员不是在计划项目中进行工作或将工作分解为有时间限制的Sprint,而是大部分工作都是在独立的小变更中进行,这些变更经常发布。 在Facebook的在线业务模型中,这是有道理的,每个人都在不断调整平台,并在不同的用户 区中尝试新的选项和应用程序,看看有什么用。 他们的体系结构值得信赖,因此实际上可以独立且廉价地完成许多小的独立更改。

Facebook表示,他们遵循持续部署 ,但并不是持续部署是IMVU流行的一种方式, IMVU会立即将所有更改推向客户,甚至不会像Etsy这样的公司进行持续部署 。

在Facebook上,代码可以释放一天两次,但这主要是做了错误修复和内部代码。 新的生产代码每周发布一次:数百名开发人员的数千个更改在星期天由其小型发布团队打包,通过自动回归测试运行,并在星期二发布(如果存在更改的开发人员在场)。 发布工程师根据变更的大小,在代码审查中进行的讨论量(通过内部代码审查工具记录下来)以及每个开发人员的“推动因果关系”来评估变更的风险:他们看到了多少个问题从此开发人员之前的代码中获取。

名为“ Gatekeeper”的工具控制着哪些客户可以使用哪些功能来支持暗启动 ,并且所有代码都以增量方式发布-进行登台,然后发布一部分用户,依此类推。 如有必要,可以将更改回滚–单独或作为最后的选择,将整个代码发布。 但是,就像许多硅谷的开发商店一样,他们大多遵循“只有真正的男人向前滚”的座右铭。

代码所有权

Facebook文化的关键在于,开发人员应对自己编写的代码,测试代码以及在生产中提供支持负有各自的责任。 这反映在他们的代码所有权模型中 :

开发人员还必须支持其软件的操作使用-这种组合被称为“开发人员”。 这进一步激励编写好的代码并进行彻底的测试。 开发人员在保持系统平稳运行方面的个人利益补充了工程程序,并使系统保持大规模的质量。 方法和工具本身还不够,因为它们总是会被滥用。 因此,个人责任文化至关重要。

我们不需要臭味测试…

Facebook没有独立的测试团队,因为他们说, 他们不需要一个 。

首先,他们在很大程度上依赖于代码审查来发现错误:

Facebook还依赖客户为他们测试软件。 无论用户是否愿意参与此测试,软件都会分阶段发布,以进行A / B测试以及对用户群的“实时实验”。 因为他们的客户群很大,所以即使只有很小比例的用户,他们也可以从测试中获得有意义的反馈,这至少可以最大程度地降低风险和给客户带来的不便。

安全/h2>

尽管性能是Facebook开发人员的重要考虑因素,但在此关于Facebook如何开发和部署软件的描述中,没有提到安全检查或测试。 没有静态分析,动态分析/扫描,笔测试或安全团队和开发人员如何合作的解释,甚至没有“隐私敏感代码”的解释-尽管此代码“保持较高的标准”,但他们没有解释这是什么“更高的标准”是。 大概他们依靠库和框架来处理至少一些appsec问题,并可能在其代码审查中查找安全性错误,但他们没有说。

Facebook的appsec程序在任何地方都没有太多可用信息。 Facebook的安全团队似乎花了很多时间来教育人们如何安全地使用Facebook以及如何 安全地 开发Facebook应用程序以及运行其漏洞赏金计划 ,这使外部人员可以为其找到安全漏洞 。

在Facebook上进行安全性搜索后,大多数情况下会发现一连串的公共安全失败,隐私侵犯和应用程序安全漏洞,这些年来,这些问题一直持续到今天。 可能是缺少有效的appsec程序的原因。

你应该在乎吗/h2>

我喜欢开发人员负责他们的工作,一直到生产的想法,这也是我们遵循的原则。 代码审查是好的。 暗启动功能是一种很好的做法,并且在很长一段时间内(甚至在被称为“暗启动”之前)都已成为系统中的常见做法。 没有测试人员或执行appsec不好。 否则,我不确定我们其他人可以从中学到什么或想从中学到什么。

参考: 这是Facebook开发和部署软件的方式。 你应该在乎吗 来自我们的JCG合作伙伴 Jim Bird在Building Real Software博客中获得。

翻译自: https://www.javacodegeeks.com/2013/09/this-is-how-facebook-develops-and-deploys-software-should-you-care.html

facebook应用开发

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91437 人正在系统学习中 相关资源:iZotope Ozone VST (臭氧) V4.0.3.274 绿色汉化版.zip-制造工具类…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年3月25日
下一篇 2020年3月25日

相关推荐