阶段性的二分法。第一部分
Editor’s Note: A two-part series on how eBay turned around an impeding staging environment into its biggest asset for developer productivity.
编者按:一个由两部分组成的系列报道,介绍了eBay如何将一个阻碍性的暂存环境转变成其对开发者生产力的最大资产。
The act of staging either in plays, real estate or software development has been an industry practice for many decades. The staging methods have evolved over the years and continue to play a critical role in its associated fields. When it comes to software development, staging is the environment where software is tested end-to-end before it reaches customers. It is a near-exact replica of a production environment, requiring a copy of the same configurations of hardware, servers and databases — basically the whole nine yards — but on a smaller scale. However, in recent years, eBay engineers continued to field the question, “Do we really need staging?”
无论是戏剧、房地产还是软件开发中的分期行为,几十年来一直是一种行业惯例。分期方法经过多年的发展,在其相关领域继续发挥着关键作用。谈到软件开发,分期是软件在到达客户之前进行端到端测试的环境。它是生产环境的近乎精确的复制品,需要复制相同的硬件、服务器和数据库的配置--基本上是整个九码--但规模较小。然而,近年来,eBay的工程师们不断提出这样的问题:"我们真的需要暂存吗?"
Do We Really Need Staging?
我们真的需要分期付款吗?
The benefits of having a staging environment versus the cost of maintaining one may appear lopsided. And there is some veracity to it. Maintaining a fully functional staging environment is hard, really hard. Even if you make it ideal, without a proper system in place, it quickly starts regressing. Moreover, with software releases transitioning from a waterfall to continuous delivery, the changes become small and incremental, opening the possibility of direct canary testing in production. There is even an excellent InfoQ talk titled “Production — Designing for Testability” on this subject.
拥有一个阶段性环境的好处与维护一个环境的成本相比,可能看起来是一边倒的。而这是有一定道理的。维护一个功能齐全的阶段性环境是很难的,真的很难。即使你把它弄得很理想,如果没有一个合适的系统,它也会很快开始倒退。此外,随着软件发布从瀑布式过渡到持续交付,变化变得小而增量,为在生产中直接进行金丝雀测试提供了可能。关于这个问题,InfoQ甚至有一篇题为 "生产--为可测试性而设计"的精彩演讲。
At eBay, we were facing the same question. eBay has had a staging environment since its dawn. It is embedded as a part of the development workflow and has been crucial in maki...