Netflix, Türkiye ve pek çok ülkede (son sayılara göre 190’dan fazla) oldukça popüler olmayı başarabilmiş durumda. Bu başarısının ardında geniş film ve dizi arşiviyle birlikte, hatta daha fazla oranda, teknik mimarisinin yattığı ise yadsınamaz bir gerçek. Müşterilerine aylık cüzi sayılabilecek bir ücretle oldukça esnek, kaliteli ve güvenilir bir hizmet imkanı sunuyor. Web, iOS, Android hatta Playstation gibi birçok platformdan erişebilme şansının yanında, yüksek olmayan bağlantı hızlarında da gayet tatminkar bir izleme deneyimi sunması da gerçekten etkileyici.

Tüm bunlar arasında, hizmetin kesintisiz ve tutarlı olarak sağlanabilmesi ise en önemli kriter. Netflix, farklı dijital platformlardan ve internet sitelerinden yapılan yayınlardan çok daha kesintisiz ve akıcı. Donan ekranlar, karelenen sahneler neredeyse hiçbir zaman (%99,9 diyelim) karşılaşılmayan durumlar.

Bu yapının arkasında ise önemli bir teknolojik başarı ve yatırım söz konusu. Netflix’in servislerinin sağlanması için Dünya geneline yayılmış AWS altyapısını kullandığı bilinen bir gerçek. Mart 2020 itibari ile sahip olduğu, küresel ölçekteki 22 Region ve 69 availability zone sayesinde Netflix mühendisleri altyapının sürekliliği konusunda AWS’ye güvenerek farklı alanlara yatırım yapma imkanına sahip oluyorlar.

Bu yatırımların bir sonucu olarak geliştirilmiş Open Connect altyapısı sayesinde yayın gecikmesinin azaltılması ve hizmet sürekliliği adına ciddi bir avantaj yakalanmış durumda.

netflix kaos mühendisliği - corona ve benzeri felaketler
Netflix Open Connect is purpose-built Content Delivery Network (CDN) responsible for serving 100% of  video traffic. Close to 95% of Netflix’s traffic globally is delivered via direct connections between Open Connect and the residential ISPs Netflix members use to access the Internet. Most of these connections are localized to the regional point of interconnection geographically closest to the member watching. (https://openconnect.netflix.com/en/)

Tüm bu çabalara ve gelişmiş teknolojiye rağmen olası felaket senaryolarına hazır olmak amacıyla sürekli egzersiz yapmak üzere bünyesinde kaos mühendisliği çalışmaları sürdürüyor.

Netflix Kaos Mühendisliği Yaklaşımı

Netflix, sahip olduğu oldukça sofistike yüzlerce micro-service’in başarı ile çalışıp, müşterilerine en iyi deneyimi sunduğundan emin olmak için olası felaket senaryolarına da hazır olmak zorunda. Bunun için de kaos mühendisliği isimli bir yaklaşımdan faydalandığı ise yine bilinen bir durum. Kaos Mühendisliği, bir sistemin production’daki öngörülemez koşullara dayanma kabiliyetini görmek ve güvence oluşturmak için ilgili sistem üzerinde deney yapma disiplinidir (Principles Of Chaos Engineering).  Netflix, kaos ortamını canlı sistemlerine tamamen rastgele sabotajlar yapan bir bot ekibi ile oluşturuyor. Bu sayede sorunlara mümkün olduğunca hazırlıklı olabilme hedefleniyor ki bugüne kadar olabilmiş görünüyor.

netflix-kaos-mühendisliği-architecture
Dave Hahn, a senior engineer from Netflix’s Performance and Reliability Department, shows off the entire architecture of Netflix in one flow diagram. (Amazon Web Services/YouTube)

Corona Virüs (Covid-19) benzeri bir pandemi veya bölgesel bir felaket durumunda dahi Netflix’in yayınlarını istediği şekilde yönlendirebilmesi için sürekli hazır olmasını sağlayan yapının ismi ise Simian Army. Simian Army, farklı seviyelerde sabotajcı botlar ile sürekli olarak canlı servislerin devreden çıkması sağlayarak, sistemlerine buna karşı hazırlıklı olmasını yani hızlıca ayağa kalkarak hizmet sağlamaya devam edebilmesini  hedefler. Her ne kadar Simian projesi emekliye ayrılıp, alt projelere evrilse de kullanılan prensip ve yaklaşım tamamıyla aynı.

Corona Virüs (Covid-19) salgınında ise Dünya genelinde birçok kişinin evlerinde gönüllü veya zorunlu karantina altına girmesi ile küresel internet altyapısının zorlandığı şu günlerde, Netflix’in bant genişliğinin önemli bir kısmını (normal günlerde tüm kapasitenin %15’i) halihazırda kullandığını göz önüne aldığımızda bunun birkaç katına çıkıyor olması işten bile değil. Bu sebeple Netflix, Avrupa coğrafyası için HD yayınlarını SD’ye çekerek, yayınlarının altyapı üzerindeki yükünü %25 oranında azaltarak önemli bir katkıda bulundu.

YouTube ve Amazon Prime da Netflix sonrasında yayın kalitelerini geçici süre ile düşürdüklerini açıkladılar. Benzer değişikliklere diğer hizmet sağlayıcıların da önümüzdeki günlerde gidebileceği veya farklı çözümlere yönelebileceği takip edilmesi gereken bir konu.

 

Kaynaklar

Principles Of Chaos Engineering, http://principlesofchaos.org./?lang=ENcontent

Netflix Quality Cut-Down, https://ew.com/tv/netflix-coronavirus-speed/

Netflix Chaos Monkey, https://github.com/netflix/chaosmonkey

Netflix on AWS Case Study, https://aws.amazon.com/solutions/case-studies/netflix/