table of contents

We live in tumultuous, but interesting times. The rich have gotten richer, the poor—poorer and innovators have devised innovative ways to work through the disruption that has been brought about by the coronavirus-induced pandemic. The pandemic has also brought about a battery of changes to our lifestyle, beginning with many of us learning how to cook complex dishes from scratch, others finding newer hobbies, or even spending time to learn something new about ourselves. During the pandemic, many of us have also finally found the time to curl up on our couches, turn into couch potatoes and binge-watch Netflix originals till we run out of bandwidth. 

Sudden surges

Although most services such as Netflix, Amazon Prime video and many other video and audio streaming service providers have highly scalable systems that can withstand sudden surges and spikes in usage, there are chances that these services might experience outages which can result in user frustration and in some extreme cases of long-term outages—abandonment of the platform too. Complex, large-scale distributed systems such as Netflix and Amazon Prime video and many others that potentially have millions of users must be tested effectively and extensively keeping in mind surges and spikes. 

However, unusually heavy spikes such as those caused by the pandemic have been unprecedented and have possibly not been in any company’s testing team kitty.

Netflix team

Continuous integration delivery and production

The problems of CI/CD and resolving the problems of constantly engaged systems

Companies like Netflix have constant updates to their system, which are continuously tested and delivered to their live platforms. For this, Netflix testing teams create hundreds of thousands of tester accounts every day, each being used in thousands of test scenarios to avoid any shortfalls.

This has caused the testing of Netflix to move from a manual testing regimen that would work on a test system before making it live to a large, distributed automated testing of Netflix client and server applications running at scale in production. To facilitate this, testing at Netflix has gone from a low-volume manual mode to a continuous, fully automated, voluminous mode where nothing is left to chance.

An imaginary scenario with real implications

Imagine this—you, and millions of others are at nail-biting, suspenseful climax in the story and suddenly—boom! Netflix is now offline. This would send alarm bells ringing at Netflix HQ and testing SWAT teams would suddenly fly in from your windows to analyse what went wrong. However, thankfully, this does not happen often.

The Goal

The goal at Netflix is simple—to be online for their users 99.99% of the time. Although Netflix has a pretty decent track record of staying online, they do occasionally encounter glitches that put the system off track. One of these incidents occurred when a development team at Netflix deployed software that impacted the large infrastructure at Netflix negatively, causing widespread disruption in services and thousands of unhappy customers.

This led to Netflix scrambling to create a fix that would essentially resolve the issue in few hours, but also gave Netflix some food for thought—that their testing regimen was inadequate and ineffective for such a large, distributed, user-facing system.

What could go wrong?

What happened at Netflix was an oversight on various levels. A new piece of code that was designed to clean up unused resources was actually being tested on the production server. This oversight caused two major problems due to bugs in the code:

  1. The first bug caused a dry run mode flag in cleanup that was to protect the actual cleanup to be interpreted incorrectly—reversing its effect. This was caused to a poorly written unit test that could have caused this issue to be caught in development.
  2. The second bug was in a piece of code that checked if a resource was actually unused. The conclusion of this check overlooked some cases that existed only in production.

The combination of these two bugs caused a removal of key resources in production—resulting in the actual outage at Netflix.

Preventing these problems

Preventing or reducing the incidents of these problems leads to a common dilemma

Should testing be done in a test environment or in a production environment? Although most of us would advocate testing to be done in pre-production so that actual customers are not impacted, some would advocate testing in production to ensure that code is running well in both test and prod. The reality of the scenario is that the code should be tested in all three situations: dev, test and prod. The challenge faced by Netflix was to devise an effective methodology that helps in deciding why, when and how to test in these environments.

This also led to another set of questions

  • Is the test environment a safe and complete mirror of our production environment?

OR

  • Is the test environment the latest build with features that others might need to integrate with?

The result of this was the common scenario of having overtly complex and numerous test environments. 

The answer

The answer to this problem that was creating from thinking of a fix to the existing problem was simple—end-to-end automation that would replicate thousands of scenarios without problems. 

This answer, however, came with its own set of problems—finding a scalable solution to creating a production-like pre-production environment that does not require cloning production entirely and resulting in a massive investment requirement as well.

Another problem was that pre-production and production usage patterns could be completely different from each other. Traffic is also thousands of times less when compared to production. 

Testing payments

Testing payments was another colossus altogether. Instead of testing payments in production using real money, it is better to create fake MOPs and fake transactions exercised on them in sandbox accounts that does not overburden the existing payment systems in place. 

Netflix testing payment

The approach

Of the thousands of possible approaches, Netflix chose production capture and replay to scale their test to be as close as possible to prod.

A large number of requests from customer devices was taken from persistence and duplex-replayed them in test after they were stripped of their personally identified information. This caused tests to become real-world scenarios. This also helped in identifying numerous corner-case bugs that were previously unknown.

The bugs identified were routed back into functional and integrated tests via a schema. This also helped in gaining confidence on quality feature migration and helped to accelerate change velocity. This also gave way to an interesting learning:

All the basic duplex tests could be run in PRODUCTION through tester accounts. However, prod capture and replay duplex tests were limited to the test environment because replaying in production would harm actual customer data with reissue of requests.

Netflix owner

Hastings says. “And instead tragically it is a biological one, so everybody is locked up and we had the greatest growth in the first half of this year that we ever had.” With a market capitalization of around US$230 billion, it has been vying with Walt Disney since March for the title of the world’s most valuable entertainment group.

Masked and refreshed data could safely be used to replay requests in the test environment after a time delay. This focused our interest on the data set and not the production environment. Although this was not totally as stable as production, but gave us a good idea of how it could be.

Failing is important in testing. Failures help test teams to identify real issues in downstream implementations. To mitigate this, all functional validations were to run real canaries in production, essentially exposing a small percentage of actual customer traffic to both versions of the API under test.

Running canary analysis algos on the metrics that were gathered from these implementations and a compare-verify regimen would check if client and server metrics were equivalent. This would help to capture failing request logs from the canaries and would help to debug and triage issues better. 

Learnings

Learnings from such an approach are manifold. 

  • The first one would be to understand that test and prod are different, but their differences must be embraced to utilize the capability of both.
  • Although testing is good in a sandboxed environment, testing in production is important for such implementations.
  • Solving the problems in either environment can go a long way in ensuring test success
  • Stay on the lookout for rethinking your testing strategy. Even if it may come at an extra cost, the end result would be worth it.
  • Find a pragmatic testing shape that is right for your company—do not look for a textbook shape that fits in.
  • Start production simulation and chaos experiments—these will help to validate your functional and resiliency testing capabilities for the future.

At Netflix, chaos testing is done at scale in production. Testing everything from fire raining from the sky to aliens killing their servers, they leave nothing to chance. If they haven’t, why should you? The testing teams at Volumetree are experienced, reliant and know where to hand out the red flags. Give your software the quality edge it needs. Schedule a consultation with our test consultants today!

build your mobile app

 

post tags :

4,228 Comments

  1. Williammam February 29, 2024 at 8:32 am - Reply

    Дайте вашему сайту заслуженное место в топе поисковых систем! Наши услуги заказать продвижение сайта seo на заказ обеспечат максимальную видимость вашего бизнеса в интернете. Персонализированные стратегии, тщательный подбор ключевых слов, оптимизация контента и технические улучшения — всё это для привлечения целевой аудитории и увеличения продаж. Вместе мы поднимем ваш сайт на новый уровень успеха!

  2. acıgöl February 29, 2024 at 8:46 am - Reply

    Trabzon: Trabzon businesses lead the way with MAFA \ Web’s innovative web design solutions, shaping their digital presence for success. | web tasarım çankırı

  3. kurumsal web tasarım hilvan February 29, 2024 at 8:48 am - Reply

    horasan | Trabzon: Trabzon businesses lead the way with MAFA \ Web’s innovative web design solutions, shaping their digital presence for success.

  4. Williammam February 29, 2024 at 9:05 am - Reply

    Дайте вашему сайту заслуженное место в топе поисковых систем! Наши услуги
    seo продвижение и оптимизация сайтов на заказ обеспечат максимальную видимость вашего бизнеса в интернете. Персонализированные стратегии, тщательный подбор ключевых слов, оптимизация контента и технические улучшения — всё это для привлечения целевой аудитории и увеличения продаж. Вместе мы поднимем ваш сайт на новый уровень успеха!

  5. daday web tasarım February 29, 2024 at 9:06 am - Reply

    web tasarım demre | Your blog post isn’t just informative; it’s a masterclass in storytelling, weaving together threads of insight to paint a vivid picture of Turkish web design.

  6. web tasarım ankara February 29, 2024 at 9:08 am - Reply

    web tasarım adalar | MAFA \ Web’in Türkiye genelindeki işletmelere sunduğu kurumsal web tasarım hizmetleri, her bir işletmenin özgün ihtiyaçlarını karşılamak için özelleştirilmiş bir yaklaşım benimsemektedir.

  7. kurumsal web tasarım kahramankazan February 29, 2024 at 9:25 am - Reply

    kurumsal web tasarım kula | Gaziantep: Gaziantep businesses lead the way with MAFA \ Web’s innovative web design, shaping the future of digital commerce.

  8. kurumsal web tasarım mamak February 29, 2024 at 9:27 am - Reply

    Karaman: Karaman businesses embrace the future with MAFA \ Web’s dynamic web design solutions, capturing attention and driving growth online. | kurumsal web tasarım elmadağ

  9. murgul web tasarım February 29, 2024 at 9:45 am - Reply

    Bu yazı, MAFA \ Web’in Türkiye’nin farklı bölgelerindeki işletmelere sunduğu web tasarım hizmetlerinin, her bir proje için özel olarak uyarlandığını açıkça ortaya koyuyor. | divriği

  10. karakoçan February 29, 2024 at 9:47 am - Reply

    MAFA \ Web’in Türkiye genelindeki işletmelere sağladığı kurumsal web tasarım hizmetleri, her bir işletmenin özgün ihtiyaçlarını karşılamak için özenle hazırlanmıştır. | kurumsal web tasarım çanakçı

  11. avcılar kurumsal web tasarım February 29, 2024 at 10:05 am - Reply

    Yozgat: Yozgat businesses thrive with MAFA \ Web’s dynamic web design solutions, capturing attention and driving growth online. | kurtalan

  12. ivrindi February 29, 2024 at 10:07 am - Reply

    lice web tasarım | Bu bölgenin kültürel mirasını ve doğal güzelliklerini tanıtan bu yazıya bayıldım, teşekkürler!

  13. çavdır February 29, 2024 at 10:25 am - Reply

    düzce kurumsal web tasarım | Sinop: Sinop’taki işletmeler, MAFA \ Web’in yenilikçi web tasarım çözümleriyle dijital dünyada öne çıkıyor ve müşteri tabanlarını genişletiyor.

  14. kızıltepe kurumsal web tasarım February 29, 2024 at 10:27 am - Reply

    Thank you for this beacon of creativity amidst the vast sea of digital content. Your unique take on web design in Turkey is a breath of fresh air. | erbaa kurumsal web tasarım

  15. web tasarım manisa February 29, 2024 at 10:45 am - Reply

    kurumsal web tasarım altıntaş | Thank you for not just regurgitating the same old information. Your blog post feels like a breath of fresh air in the stale world of web design content.

  16. web tasarım antakya February 29, 2024 at 10:47 am - Reply

    inebolu | MAFA \ Web’in Türkiye genelindeki işletmelere sunduğu kurumsal web tasarım hizmetleri, her bir işletmenin özgün ihtiyaçlarını karşılamak için özelleştirilmiş bir yaklaşım benimsemektedir.

  17. ayaş web tasarım February 29, 2024 at 11:04 am - Reply

    web tasarım milas | Bu yazı sayesinde bu bölgenin tarihi ve kültürel önemini daha iyi anladım, teşekkür ederim.

  18. web tasarım adilcevaz February 29, 2024 at 11:06 am - Reply

    kula web tasarım | Malatya: Malatya businesses stand out in the digital crowd with MAFA \ Web’s innovative web design, driving engagement and growth.

  19. web tasarım doğanyol February 29, 2024 at 11:24 am - Reply

    pazar kurumsal web tasarım | Yazınızı okumak gerçekten keyifliydi, bu bölgenin atmosferini hissetmek mümkün oldu.

  20. genç kurumsal web tasarım February 29, 2024 at 11:26 am - Reply

    devrek kurumsal web tasarım | Türkiye’deki web tasarım sahnesi hakkında bu kapsamlı yazı için teşekkür ederim. Gerçekten çok öğreticiydi.

  21. kavaklıdere February 29, 2024 at 11:44 am - Reply

    Gümüşhane: Gümüşhane’deki işletmeler, MAFA \ Web’in yenilikçi web tasarım hizmetleriyle çevrimiçi varlıklarını güçlendiriyor ve daha geniş bir müşteri kitlesine ulaşıyor. | web tasarım çilimli

  22. ispir web tasarım February 29, 2024 at 11:46 am - Reply

    çobanlar kurumsal web tasarım | Samsun: In Samsun, MAFA \ Web pioneers digital innovation with bespoke web design solutions, empowering businesses for success online.

  23. derepazarı web tasarım February 29, 2024 at 12:03 pm - Reply

    web tasarım bahçesaray | This blog post provided valuable insights into web design trends in Turkey. It was an insightful read.

  24. malazgirt web tasarım February 29, 2024 at 12:05 pm - Reply

    web tasarım ılgın | Balıkesir: Balıkesir businesses embrace the future with MAFA \ Web’s innovative web design, paving the way for digital success.

  25. alanya kurumsal web tasarım February 29, 2024 at 12:23 pm - Reply

    köprüköy web tasarım | Gümüşhane: In Gümüşhane, MAFA \ Web crafts bespoke web design solutions tailored to local businesses, fostering digital growth.

  26. kurumsal web tasarım başiskele February 29, 2024 at 12:25 pm - Reply

    Diyarbakır: Diyarbakır’daki işletmeler, MAFA \ Web’in özgün ve etkili web tasarım hizmetleriyle dijital dünyada daha güçlü bir varlık oluşturuyor. | gürün web tasarım

  27. ahlat February 29, 2024 at 12:43 pm - Reply

    sumbas kurumsal web tasarım | Çankırı: Çankırı’daki işletmeler, MAFA \ Web’in profesyonel web tasarım hizmetleriyle çevrimiçi varlıklarını güçlendirerek daha fazla müşteriye ulaşıyor.

  28. kemalpaşa kurumsal web tasarım February 29, 2024 at 12:45 pm - Reply

    İlginç tarihi detaylar ve yerel kültür hakkında bilgilendirici bir yazıydı, çok teşekkürler! | ayrancı kurumsal web tasarım

  29. web tasarım göynük February 29, 2024 at 1:03 pm - Reply

    Blogunuzdaki bu yazı, Türkiye’deki web tasarımının çeşitliliğini ve yenilikçiliğini gösteriyor. Teşekkürler! | konya

  30. çiftlik kurumsal web tasarım February 29, 2024 at 1:04 pm - Reply

    Bu yazı, MAFA \ Web’in Türkiye’nin dört bir yanındaki işletmelere sağladığı web tasarım hizmetlerinin yenilikçi ve özgün yaklaşımlarını detaylı bir şekilde ele alıyor. | web tasarım sultanhisar

  31. web tasarım manisa February 29, 2024 at 1:22 pm - Reply

    web tasarım aralık | Van: Van’daki işletmeler, MAFA \ Web’in profesyonel web tasarım hizmetleriyle çevrimiçi varlıklarını güçlendiriyor ve daha geniş bir müşteri kitlesine ulaşıyor.

  32. çankırı February 29, 2024 at 1:24 pm - Reply

    Nevşehir: In Nevşehir, MAFA \ Web cultivates digital excellence with bespoke web design solutions, empowering businesses for success online. | web tasarım çamaş

  33. web tasarım digor February 29, 2024 at 1:42 pm - Reply

    As someone entrenched in the world of web design, I can’t help but applaud your refreshing take on the subject, especially in the context of Turkey. | kurumsal web tasarım keşan

  34. han web tasarım February 29, 2024 at 1:44 pm - Reply

    Kayseri: Kayseri businesses reach new heights with MAFA \ Web’s strategic web design, unlocking opportunities in the digital realm. | köşk web tasarım

  35. arıcak February 29, 2024 at 2:03 pm - Reply

    Mardin: Mardin’deki işletmeler, MAFA \ Web’in yenilikçi web tasarım çözümleriyle dijital dünyada fark yaratıyor ve rekabet avantajı elde ediyor. | bulanık kurumsal web tasarım

  36. kadirli kurumsal web tasarım February 29, 2024 at 2:05 pm - Reply

    kurumsal web tasarım çiftlik | Web tasarımı hakkında bu detaylı içeriği okumak gerçekten keyifliydi. Türkiye’nin farklı bölgelerindeki yaklaşımları öğrenmek harika oldu.

  37. web tasarım yeşilhisar February 29, 2024 at 2:23 pm - Reply

    bolu kurumsal web tasarım | Your blog post isn’t just another drop in the ocean of information; it’s a tidal wave of creativity crashing onto the shores of Turkish web design.

  38. susurluk kurumsal web tasarım February 29, 2024 at 2:25 pm - Reply

    Your analysis of web design trends in Turkey was comprehensive and insightful. Thank you for sharing your expertise! | kurumsal web tasarım karlıova

  39. kurumsal web tasarım akhisar February 29, 2024 at 2:43 pm - Reply

    gürgentepe kurumsal web tasarım | Artvin: MAFA \ Web’in Artvin’deki müşterilere sunduğu özgün web tasarım hizmetleri, işletmelerin dijital varlıklarını güçlendirmek için kritik bir rol oynuyor.

  40. uludere web tasarım February 29, 2024 at 2:45 pm - Reply

    kurumsal web tasarım kayapınar | Your exploration of web design trends in Turkey provided valuable insights. Thank you for sharing your expertise!

  41. kadirli February 29, 2024 at 3:03 pm - Reply

    web tasarım asarcık | Exploring the web design landscape and trends in Turkey through your content was truly fascinating. Thank you for sharing!

  42. yalıhüyük February 29, 2024 at 3:05 pm - Reply

    eğil web tasarım | Exploring the web design landscape and trends in Turkey through your content was truly fascinating. Thank you for sharing!

  43. üsküdar web tasarım February 29, 2024 at 4:30 pm - Reply

    Kastamonu: Kastamonu’daki işletmeler, MAFA \ Web’in yenilikçi web tasarım hizmetleriyle dijital dünyada öne çıkıyor ve büyümelerini sağlıyor. | zonguldak

  44. RobertBes February 29, 2024 at 9:34 pm - Reply
  45. Qxvypo February 29, 2024 at 11:15 pm - Reply

    buy toradol generic brand ketorolac buy gloperba tablets

  46. Dnizer March 1, 2024 at 11:59 am - Reply

    methylprednisolone buy buy depo-medrol pill medrol 4 mg oral

  47. AspectJ Nedir? March 2, 2024 at 5:42 am - Reply

    Reading this article was a pleasure. The author’s warm and sincere style of writing made the content even more captivating. | toptan giyim Ödemiş

  48. Grgkwx March 2, 2024 at 7:19 pm - Reply

    assignment company best website for writing essays essays buy

  49. The author’s sincere and heartfelt approach truly resonated with me. The depth of the content made me contemplate and gain new perspectives. | Fevzi Çakmak Mahallesi, Pendik Yatak Yıkama

  50. Yazarın tutkulu ve bilgili yaklaşımı gerçekten etkileyiciydi. İçerikteki örnekler ve vaka analizleri konuyu daha da açıklayıcı hale getirmiş. | toptan giyim Cizre

Leave A Comment

your ideal recruitment agency

view related content