Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Testing in Production for the Bold and True

Rob Crowley
November 15, 2018

Testing in Production for the Bold and True

Microservices and containers have transformed application design and deployment patterns. Modern cloud native architectures - which underpin many of the world's ground-breaking tech companies such as Uber, Netflix and Airbnb - afford unparalleled levels of agility and scale but are not without trade-offs. Testing in particular poses a significant challenge. With a complex adaptive system that can fail in myriad different ways, what confidence can we really gain from proving it works in a test environment with a certain data set at one particular point in time? Faced with such challenges, "testing in production" has become an attractive approach for enabling the safe deployment and release of software systems at speed.

In this talk, we will explore the gamut of techniques that comprise testing in production including: traffic shadowing at deploy time; feature flags and canarying at release time; as well as chaos testing, A/B tests and tracing post release. Additionally, we will see through a series of live demonstrations how Kubernetes and Istio, a leading open source service mesh, can bring these advanced techniques within reach of mere mortals.

By the end of the session, you will not only understand the techniques involved in safely testing in production but also have the knowledge to put them into practice.

Rob Crowley

November 15, 2018
Tweet

More Decks by Rob Crowley

Other Decks in Programming

Transcript

  1. If something goes wrong with the release now then at

    least we know that we’ve done everything we could.
  2. X

  3. X