Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

How Netflix Does Deployment

DZone's Guide to

How Netflix Does Deployment

· DevOps Zone ·
Free Resource

Can you release faster without sacrificing quality? See how with our free ebook Strategies for a Successful Test Automation Project and a free trial of Ranorex Studio today!

Netflix accounts for a whopping third of peak Internet traffic in North America. It seems that when Americans get home from work, they queue up their Netflix instant queue and this Internet traffic accounts for a third of all evening traffic. 

Obviously, anyone interested in learning about continuous delivery could learn a lot from Netflix. Luckily, Netflix's own engineering manager Ben Schmaus recently wrote an article titled "Deploying the Netflix API" on the Netflix Tech Blog. 

Schmaus explains that the foundational concepts behind their delivery process are automation and insight. Schmaus believes that any "process requiring people to execute manual steps repetitively will get you into trouble on a long enough timeline." Thus, anything that can be automated, should.

Additionally, Schmaus says that you "can't support, understand and improve what you can't see." In order to support, understand and improve its deployment, Netflix needs to be able to trace code as it flows through the SCM and quality gates. "Tools that surface feedback about the state of our pipeline and running apps give us the confidence to move fast and help us quickly identify and fix issues when things (inevitably) break."

Read more in Schmaus' article to learn about how Netflix implements branches, Canary, multi-region deployment automation, and how they keep their team informed.



Get your test automation project off to the right start. Download your free test planning template and a 30-day no-obligation trial of Ranorex Studio today!

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}