Artikel ini adalah bab dari buku baru saya,
Explain the Cloud to a Ten-Year- Old. Opsi pertama ditulis khusus untuk mereka yang membutuhkan pengantar ke awan. Lalu saya membuat beberapa pembaruan dan menambahkan beberapa bab - βNetflix: apa yang terjadi ketika Anda menekan start?β dan "Apa itu cloud computing?" - yang sudah sedikit di luar pengetahuan seorang pemula. Saya pikir mereka akan dapat menarik minat orang yang cukup berpengalaman sekalipun.
Jadi jika Anda membutuhkan pengantar yang bagus tentang awan atau Anda kenal seseorang yang membutuhkannya, silakan lihat. Saya pikir Anda akan menyukainya. Saya bangga dengan apa yang saya lakukan.
Saya menulis bab ini berdasarkan selusin sumber, kadang-kadang saling bertentangan. Fakta-fakta kunci berubah dari waktu ke waktu dan bergantung pada siapa yang menceritakan kisah dan audiens mana. Saya mencoba membuat cerita yang koheren kapan pun memungkinkan. Harap dicatat bahwa ini bukan panduan teknis - ini adalah artikel dengan gambar besar. Sebagai contoh, saya bahkan tidak pernah menyebutkan
microservices .
Netflix tampaknya sangat sederhana. Klik "putar" dan video akan muncul secara ajaib. Sederhana bukan? Ya, tidak juga.

Setelah diskusi kami di bab "Apa itu cloud computing?" Anda mungkin mengharapkan Netflix bekerja dengan video menggunakan AWS. Klik "mainkan" di aplikasi Netflix, dan video yang disimpan di S3 akan dialirkan langsung ke perangkat Anda melalui Internet melalui Internet.
Pendekatan yang masuk akal - untuk layanan yang jauh lebih kecil.
Tetapi Netflix sepenuhnya salah. Semuanya jauh lebih rumit dan menarik daripada yang bisa Anda bayangkan.
Untuk memahami alasannya, mari kita lihat statistik Netflix untuk 2017:
- Lebih dari 110 juta pelanggan.
- Bekerja di lebih dari 200 negara.
- Penghasilan $ 3 miliar per kuartal.
- Menambahkan 5 juta pelanggan per kuartal.
- Memainkan lebih dari satu miliar jam video setiap minggu. Sebagai perbandingan, YouTube memutar 1 miliar jam video setiap hari, sementara Facebook memutar 110 juta jam video setiap hari.
- Pada suatu hari 2017, 250 juta jam video diputar.
- Bertanggung jawab atas 37% lalu lintas Internet AS puncak.
- Berencana untuk menghabiskan $ 7 miliar untuk konten baru pada 2018.
Apa yang kami pelajari?
Netflix sangat besar. Ini bersifat global, memiliki banyak pelanggan, memainkan banyak video dan memiliki banyak uang.
Fakta terkait lainnya adalah bahwa Netflix bekerja dengan berlangganan. Pelanggan membayar Netflix setiap bulan, dan dapat berhenti berlangganan kapan saja. Ketika Anda menekan "play" untuk bersantai di bawah Netflix, akan lebih baik jika layanan ini bekerja secara normal. Pelanggan yang tidak puas berhenti berlangganan.
Lihatlah lebih dalam
Netflix adalah contoh hebat dari ide-ide yang kami diskusikan, jadi bab ini akan memiliki lebih banyak detail daripada menggambarkan layanan cloud lainnya. Salah satu alasan untuk menjelajahi Netflix secara mendalam adalah karena mereka memberikan lebih banyak informasi daripada perusahaan lain. Komunikasi Netflix dianggap sebagai aset budaya utama, dan perusahaan lebih dari berhasil mempertahankan standarnya.
Saya bahkan ingin berterima kasih kepada Netflix atas keterbukaan mereka tentang arsitektur mereka. Selama bertahun-tahun, perusahaan memberi ratusan ceramah dan menulis ratusan artikel tentang rincian pola kerja internal mereka. Ini membantu meningkatkan seluruh industri.
Alasan lain untuk perincian terperinci tersebut adalah bahwa layanan Netflix sangat menakjubkan. Sebagian besar dari kita telah menggunakannya - dan siapa yang tidak tertarik melihat di balik layar dan mencari tahu cara kerjanya?
Netflix berjalan dalam dua awan - AWS dan Open Connect
Bagaimana perusahaan memuaskan pelanggan? Dengan bantuan awan. Bahkan, dua cloud berbeda - AWS dan Open Connect. Keduanya harus bekerja bersama tanpa masalah untuk menghasilkan konten video berjam-jam yang memuaskan pengguna.
Tiga bagian Netflix: klien, backend, jaringan pengiriman konten
Anda dapat secara mental membagi Netflix menjadi tiga bagian: klien, backend, jaringan pengiriman konten (CDN).
Klien - antarmuka pengguna yang berjalan pada perangkat apa pun yang digunakan untuk melihat daftar video dan memutarnya. Ini bisa berupa aplikasi seluler di smartphone, situs web di komputer desktop, atau bahkan aplikasi di TV pintar. Netflix mengontrol setiap klien di setiap perangkat.
Segala sesuatu yang terjadi sebelum Anda mengklik tombol putar terjadi di backend yang berjalan pada AWS. Ini termasuk hal-hal seperti menyiapkan semua video masuk baru dan memproses permintaan dari semua aplikasi, situs web, televisi, dan perangkat lainnya.
Segala sesuatu yang terjadi setelah mengklik "play" diproses di Open Connect. Ini adalah jaringan pengiriman konten Netflix sendiri. Ini menyimpan video di berbagai tempat di seluruh dunia. Ketika Anda mengklik "mainkan," aliran video datang dari Open Connect ke perangkat Anda, dan itu ditunjukkan oleh klien. Jangan khawatir - kita akan membicarakan CDN nanti. Yang menarik, proses peluncuran video perusahaan tidak disebut "klik" mainkan, tetapi "klik" mulai "pada namanya." Setiap industri memiliki jargonnya sendiri.
Mengontrol ketiga area - klien, backend, CDN - Netflix mencapai integrasi vertikal penuh. Perusahaan mengontrol pengalaman Anda menonton video dari awal hingga selesai. Karenanya, ini hanya berfungsi saat Anda mengeklik "mainkan" di bagian mana pun di dunia. Anda dijamin mendapatkan konten yang Anda butuhkan, yang ingin Anda tonton, dan kapan pun Anda inginkan.
Mari kita lihat bagaimana tepatnya ini terjadi.
Pada 2008, Netflix mulai pindah ke AWS
Netflix telah beroperasi sejak tahun 1998. Pada awalnya, ia berurusan dengan penyewaan DVD melalui pos. Tetapi perusahaan melihat masa depan dalam streaming video sesuai permintaan. Pada 2007, Netflix memperkenalkan layanan video-on-demand-nya, yang memungkinkan pelanggan untuk melakukan streaming acara TV dan film melalui situs web perusahaan di komputer pribadi atau melalui perangkat lunak khusus perusahaan di berbagai platform yang didukungnya, termasuk smartphone dan tablet, pemutar digital, dan permainan set-top box dan TV pintar.
Masa depan untuk streaming video sesuai permintaan mungkin tampak jelas. Pada prinsipnya, itu. Secara pribadi, saya bekerja di beberapa startup yang mencoba mengeluarkan video sesuai permintaan. Mereka gagal. Dan Netflix sedang menunggu kesuksesan. Perusahaan itu jelas bekerja dengan baik, tetapi terlambat datang ke pasar, yang membantunya. Pada 2007, Internet cepat dan cukup murah untuk mendukung layanan video streaming. Ini belum pernah terjadi sebelumnya. Munculnya lalu lintas seluler yang cepat dan tidak terlalu mahal serta pengenalan perangkat seluler yang kuat, seperti smartphone dan tablet, membuatnya lebih mudah dan lebih murah untuk menonton video streaming kapan saja, di mana saja. Momen yang tepat adalah kunci kesuksesan.
Netflix memulai dengan pusat data sendiri
EC2 baru dimulai pada 2007, sekitar waktu yang sama dengan Netflix. Karenanya, Netflix tidak dapat mulai menggunakan EC2. Perusahaan telah membangun dua pusat data yang terletak di dekatnya. Dan mereka mengalami semua masalah yang kita bahas dalam bab-bab sebelumnya.
Membangun pusat data sangat mahal. Butuh waktu untuk memesan peralatan, pemasangan dan peluncurannya. Segera setelah peluncuran, mereka kehabisan daya, dan semuanya harus mulai dari awal lagi. Waktu yang dihabiskan untuk peralatan memaksa perusahaan untuk mengadopsi strategi penskalaan vertikal.
Netflix menulis program besar yang dijalankan pada komputer besar. Pendekatan ini disebut konstruksi monolit. Satu program melakukan segalanya. Masalahnya adalah jika Anda tumbuh secepat Netflix, sangat sulit untuk membuat monolith yang andal. Dia tidak bisa diandalkan.
Penolakan layanan memaksa Netflix untuk pindah ke AWS
Pada bulan Agustus 2008, Netflix tidak dapat mengirim DVD selama tiga hari berturut-turut karena kegagalan dalam database mereka. Itu tidak bisa diterima. Itu perlu untuk menyelesaikan sesuatu. Pengalaman membangun pusat data mengajarkan perusahaan hal yang penting: tidak berhasil membangun pusat data. Dia pandai mengirimkan video ke kliennya. Dia perlu fokus pada peningkatan dalam pengiriman video, daripada perbaikan dalam membangun pusat data. Pembangunan pusat data bukanlah keunggulan kompetitif perusahaan - keunggulan mereka adalah pengiriman video.
Pada saat itu, Netflix memutuskan untuk pindah ke AWS. AWS baru saja dimulai, jadi itu adalah keputusan yang berani. Perusahaan pindah ke AWS karena membutuhkan infrastruktur yang lebih andal. Netflix ingin menghilangkan semua kelemahan sistem. AWS menawarkan pusat data, penyimpanan, dan pusat data yang sangat andal. Netflix membutuhkan layanan cloud untuk tidak lagi membangun monolit yang tidak dapat diandalkan. Netflix ingin menjadi layanan global tanpa membangun pusat data. Peluang seperti itu di pusat data lama tidak dan tidak bisa.
Netflix memilih AWS karena tidak ingin terlibat dalam kerja keras yang tidak berbeda. Kerja keras yang tidak dibeda-bedakan adalah apa yang perlu dilakukan, tetapi itu tidak memberikan keuntungan bagi bisnis utama, yang terdiri dari menyediakan tontonan video yang berkualitas. AWS melakukan semua kerja keras ini untuk Netflix. Dan ini memberi netflix peluang untuk berkonsentrasi pada penyediaan layanan bisnis yang berharga.
Memindahkan perusahaan dari pusat data ke AWS membutuhkan perusahaan lebih dari delapan tahun. Netflix meningkatkan jumlah pelanggan delapan kali selama ini. Netflix sekarang beroperasi pada beberapa ratus ribu salinan EC2.
AWS Netflix Lebih Andal
Bukan berarti Netflix tidak pernah mengalami masalah AWS, tetapi secara keseluruhan, layanannya menjadi jauh lebih andal dari sebelumnya. Anda tidak akan lagi melihat keluhan seperti itu:


Perusahaan menjadi sangat andal karena mengambil langkah luar biasa untuk ini. Ini beroperasi di tiga wilayah AWS: Virginia Utara, Portland, Oregon, dan Dublin, Irlandia. Di masing-masingnya, Netflix beroperasi di tiga zona akses berbeda.
Perusahaan tidak memiliki rencana untuk menambah jumlah wilayah kerja. Menambahkan wilayah baru sangat sulit dan mahal. Sebagian besar perusahaan hanya beroperasi di satu wilayah, belum lagi dua atau tiga.
Keuntungan bekerja di tiga wilayah adalah bahwa salah satu dari mereka dapat jatuh, dan dua lainnya akan jatuh ke tempatnya dan melayani pelanggan dari daerah yang terkena dampak. Netflix menyebut jatuhnya evakuasi wilayah.
Pertimbangkan satu contoh. Misalkan Anda sedang menonton episode baru "House of Cards" di London, Inggris. Kemungkinan besar, perangkat Anda terhubung ke wilayah Dublin, karena paling dekat dengannya. Apa yang terjadi ketika wilayah Dublin jatuh? Akankah Netflix berhenti bekerja untuk Anda? Tidak. Setelah masalah terdeteksi, Netflix akan mengarahkan Anda ke Virginia. Perangkat Anda akan berkomunikasi dengan wilayah Virgin bukannya Dublin. Anda bahkan mungkin tidak melihat kegagalan.
Seberapa sering wilayah AWS gagal? Sebulan sekali. Ya, sebenarnya wilayah itu tidak gagal setiap bulan. Netflix melakukan tes bulanan. Setiap bulan, Netflix secara khusus menjatuhkan seluruh wilayah, hanya untuk memastikan sistem mereka menangani kegagalan regional. Anda dapat mengevakuasi wilayah dalam enam menit.
Netflix menyebut ini model layanan global. Setiap klien dapat dilayani dari wilayah mana pun. Ini luar biasa. Dan ini tidak terjadi secara otomatis. AWS tidak memiliki saus ajaib untuk menangani kegagalan daerah atau melayani pelanggan dari berbagai daerah. Netflix sendiri melakukan pekerjaan itu. Perusahaan ini adalah pelopor dalam menciptakan sistem yang andal menggunakan beberapa daerah. Saya tidak tahu perusahaan lain yang akan mengambil tindakan seperti itu untuk memastikan keandalan layanan tersebut.
Keuntungan lain dari bekerja dari ketiga wilayah ini adalah bahwa Netflix dapat menjangkau seluruh dunia. Netflix melakukan pemeriksaan dan menemukan bahwa dengan meluncurkan aplikasi di mana saja di dunia, dalam hal apa pun, Anda akan menerima layanan cepat dari salah satu wilayah ini.
Netflix Menghemat Menggunakan AWS
Ini mungkin mengejutkan banyak orang, tetapi AWS untuk Netflix lebih murah. Biaya cloud dalam hal melihat video keluar beberapa kali lebih sedikit daripada saat menggunakan pusat data lama. Mengapa Karena elastisitas awan.
Netflix dapat menambahkan server sesuai kebutuhan dan mengembalikannya saat tidak diperlukan. Alih-alih sekelompok komputer tambahan tidak melakukan apa-apa, hanya menunggu beban puncak, perusahaan menggunakan komputer persis sebanyak yang dibutuhkan, dan bila perlu.
Apa yang terjadi pada AWS sebelum Anda mengklik play?
Segala sesuatu yang tidak terhubung dengan pengarsipan video diproses pada AWS. Ini termasuk daya komputasi yang dapat diskalakan, penyimpanan yang dapat diukur, logika bisnis, basis data terdistribusi yang dapat diukur, pemrosesan data besar dan analitik, rekomendasi, transcoding, dan ratusan fungsi lainnya. Anda tidak perlu memahami semuanya, tetapi karena ini mungkin menarik bagi Anda, saya akan menjelaskannya secara singkat.
Daya Komputasi dan Penyimpanan yang Dapat Dikukur
Daya komputasi scalable adalah EC2, dan penyimpanan S3. Tidak ada yang baru bagi kita di sini. Perangkat Anda adalah iPhone, TV, Xbox, ponsel cerdas Android, tablet, dll. - Berkomunikasi dengan layanan yang berjalan di EC2. Perangkat Anda menerima daftar film potensial untuk ditonton dengan menghubungi komputer yang menjalankan EC2. Informasi terperinci tentang video yang diterima perangkat Anda di sana. Semuanya berfungsi sama seperti di layanan cloud lainnya.
Database Terdistribusi yang Dapat diskalakan
Netflix menggunakan DynamoDB dan Cassandra sebagai basis data terdistribusi. Nama-nama ini seharusnya tidak berarti apa-apa bagi Anda - mereka hanya database berkualitas tinggi. Data disimpan dalam database. Informasi tentang profil Anda, pada akun, pada semua film yang ditonton - semua ini disimpan dalam database. Basis data terdistribusi tidak bekerja pada satu komputer besar, tetapi pada banyak komputer. Data Anda disalin ke banyak komputer sehingga meskipun satu atau dua komputer yang menyimpan data Anda gagal, data Anda akan aman. Pada kenyataannya, semua data disalin di ketiga wilayah. Karena hal ini, jika terjadi kegagalan wilayah, data Anda akan tersedia di wilayah lain tempat Anda akan beralih. Dan penskalaan berarti bahwa basis data akan dapat menyimpan sebanyak mungkin data yang Anda tambahkan. Ini adalah salah satu keunggulan utama dari database terdistribusi. Jika lebih banyak data datang, lebih banyak komputer dapat ditambahkan.
Pemrosesan data besar dan analitik
Data besar hanyalah banyak data. Netflix mengumpulkan banyak informasi. Perusahaan tahu siapa yang menonton, kapan dan di mana mereka menontonnya. Perusahaan tahu video mana yang dilihat pelanggannya, tetapi tidak dipesan. Dia tahu berapa kali setiap video ditonton - dan masih banyak lagi.
Mengumpulkan dan mengonversi semua data ke format standar disebut pemrosesan. Dan mengekstraksi makna dari mereka - analisis. Data dianalisis untuk mendapatkan jawaban atas pertanyaan spesifik.
Netflix mempersonalisasi gambar terutama untuk Anda
Berikut adalah contoh yang bagus tentang bagaimana Netflix memikat Anda untuk menonton lebih banyak film menggunakan kemampuan analisis data. Ketika Anda menelusuri daftar, memilih apa yang akan dilihat, apakah Anda memperhatikan fakta bahwa untuk setiap film gambar dikeluarkan? Ini adalah gambar judul.
Gambar judul seharusnya membangkitkan minat Anda, menarik perhatian Anda, dan membuat Anda memilih video ini. Idenya adalah bahwa semakin menarik gambar, semakin besar kemungkinan Anda menonton video. Dan semakin banyak video yang Anda tonton, semakin kecil kemungkinan Anda untuk berhenti berlangganan dari Netflix.
Berikut adalah contoh dari berbagai gambar judul untuk seri Stranger Things:

Anda mungkin terkejut bahwa setiap gambar untuk setiap video dipilih khusus untuk Anda. Tidak semua orang melihat gambar yang sama.
Sebelumnya, semua orang melihat gambar judul yang sama. Begini cara kerjanya. Pelanggan ditunjukkan satu gambar yang dipilih secara acak dari satu set, seperti yang ditunjukkan pada ilustrasi di atas. Netflix menghitung semua penayangan video, dan merekam gambar apa yang ditunjukkan kepada pengguna saat video dipilih. Misalkan, sebagai contoh kita dengan seri, bahwa ketika menampilkan gambar pusat dari kolase, video ditonton 1000 kali. Dan ketika menampilkan sisa gambar - hanya sekali.
Karena gambar grup lebih baik daripada yang lain untuk menarik pengguna untuk melihat, Netflix harus menjadikannya gambar judul seri selamanya. Ini disebut seleksi berbasis data. Netflix bekerja berdasarkan analisis data. Data dikumpulkan - dalam hal ini, jumlah tampilan yang terkait dengan setiap gambar - dan digunakan untuk membuat keputusan terbaik - dalam hal ini, untuk memilih gambar judul.
Secara licik, tetapi dapatkah ini dilakukan lebih baik? Ya, bahkan menggunakan lebih banyak data. Untuk topik ini, masa depan terletak pada penyelesaian masalah melalui pembelajaran dari data. Kami adalah orang yang berbeda. Apakah Anda berpikir bahwa gambar yang sama dapat memotivasi kami? Mungkin tidak. Kami memiliki selera berbeda, preferensi berbeda. Dan Netflix tahu ini - jadi sekarang ini mempersonalisasi semua gambar yang ditampilkan kepada Anda. Dia mencoba untuk memilih gambar yang menyoroti aspek terpenting dari video untuk Anda. Bagaimana dia melakukan ini?
Ingatlah bahwa Netflix mencatat dan menghitung semua yang Anda lakukan di situs webnya. Dia tahu film mana yang kamu suka, aktor mana yang kamu suka, dan sebagainya. Misalkan di antara rekomendasi Anda adalah film "Good Will Hunting." Netflix harus memilih gambar header yang sesuai. Tujuannya adalah untuk menunjukkan gambar yang memberi tahu Anda bahwa film ini mungkin menarik bagi Anda. Gambar apa yang perlu Anda perlihatkan?
Jika Anda suka komedi, Netflix akan menampilkan gambar bersama Robin Williams. Jika Anda lebih suka melodrama, Netflix akan menampilkan gambar Matt Damon dan Minnie Driver yang akan dicium.
Menampilkan Robin Williams, layanan ini memberi tahu Anda bahwa film tersebut kemungkinan besar memiliki humor, dan karena Netflix tahu Anda menyukai komedi, video ini tepat untuk Anda. Image Matt Damon dan Minnie Driver mengirim pesan yang sama sekali berbeda. Jika Anda suka komedi dan melihat gambar ini, kemungkinan besar Anda akan melewatkannya. Karena itu, memilih gambar yang tepat sangat penting. Ini mengirimkan pesan pribadi yang kuat menceritakan tentang tema film.Berikut adalah contoh lain - Pulp Fiction:
Jika Anda menonton banyak film dengan Uma Thurman, maka Anda cenderung melihat gambar judul dengan Uma. Jika Anda telah menonton banyak film dengan Travolta, maka Anda cenderung melihat gambar judul bersama John. Lihat bagaimana memilih gambar hasil personalisasi terbaik yang dapat meningkatkan kemungkinan menonton video tertentu?Netflix menarik minat Anda saat memilih gambar, tetapi layanan ini tidak ingin berbohong kepada Anda. Dia tidak ingin menampilkan gambar menarik untuk membuat Anda menonton video yang tidak Anda sukai. Tidak ada insentif. Layanan tidak membebankan biaya untuk jumlah tampilan. Layanan ini mencoba untuk meminimalkan penyesalan dan ingin Anda menyukai apa yang Anda tonton, sehingga ia memilih gambar judul terbaik dari yang mungkin. Dan ini hanyalah satu contoh kecil dari analisis data. Netflix menggunakan strategi semacam itu di mana-mana.Rekomendasi
Netflix biasanya menampilkan 40-50 pilihan video, tetapi layanan ini menawarkan ribuan video. Bagaimana Netflix memutuskan apa yang akan ditampilkan? Dengan pembelajaran mesin.Ini adalah bagian dari pemrosesan data besar dan analitik yang baru saja kita bicarakan. Layanan memeriksa data dan memprediksi apa yang Anda sukai. Secara umum, semua yang Anda lihat di layar Netflix telah dipilih khusus untuk Anda menggunakan pembelajaran mesin.Transcoding dari file sumber ke format yang Anda butuhkan
Jadi kami membahas bagaimana Netflix menangani video. Sebelum Anda dapat mulai menonton di perangkat favorit Anda, Netflix harus mengonversi video ke format yang paling sesuai dengan perangkat Anda. Proses ini disebut transcoding. Itu mengkonversi file video dari satu format ke yang lain, sehingga video dapat ditonton di berbagai platform dan perangkat. Netflix mengkodekan semua videonya di AWS pada 300.000 prosesor secara bersamaan. Ini lebih dari hampir semua komputer super!Sumber Sumber Data
Siapa yang mengunggah video ke Netflix? Studio dan asosiasi produksi. Netflix menyebut ini data mentah. Video baru dikirim ke tim konten untuk diproses. Muncul dalam resolusi tinggi, banyak ukuran terabyte. Untuk membayangkan satu terabyte informasi, bayangkan 60 pilar kertas, yang masing-masing tingginya sama dengan Menara Eiffel.Sebelum Anda dapat menonton video, Netflix memaparkannya ke proses multi-langkah yang keras.
Pemeriksaan kualitas
Pertama, Netflix menghabiskan banyak waktu untuk memeriksa kualitas video. Dia mencari artefak digital, perubahan warna, menjatuhkan frame yang mungkin muncul karena upaya transcoding sebelumnya atau masalah transfer data. Jika ada masalah yang terdeteksi, video ditolak.Pengolahan conveyor
Setelah mengonfirmasi kualitas video dikirim ke pipa pemrosesan. Ini adalah urutan langkah-langkah yang dilalui data sebelum dapat digunakan - sesuatu seperti ban berjalan di pabrik. Lebih dari 70 program pemrosesan berbeda digunakan untuk membuat setiap video.Memproses file tunggal beberapa terabyte tidak praktis, sehingga langkah pertama dalam pipa akan membagi video menjadi banyak potongan kecil. Potongan melewati conveyor sehingga dapat dikodekan secara paralel - yaitu, mereka diproses secara bersamaan.Kami menunjukkan paralelisasi menggunakan contoh.
Misalkan Anda memiliki seratus anjing kotor yang perlu dicuci. Bagaimana ini akan lebih cepat untuk melakukan ini - jika satu orang akan mencuci satu demi satu anjing, atau jika Anda menyewa seratus mesin cuci anjing dan mencuci semuanya pada waktu yang sama?Tentunya, prosesnya akan lebih cepat jika seratus mesin cuci bekerja secara bersamaan. Ini paralelisme. Itulah sebabnya Netflix menggunakan begitu banyak server EC2. Mereka membutuhkan banyak server untuk memproses file video raksasa ini secara paralel. Dan itu berhasil - perusahaan mengklaim bahwa file sumber dapat dikodekan dan dikirim ke CDN hanya dalam 30 menit.Ketika potongan dikodekan, mereka diperiksa untuk memastikan bahwa mereka tidak memiliki masalah baru. Kemudian mereka dikumpulkan lagi dalam satu file dan diperiksa lagi.Hasilnya adalah banyak file
Proses pengkodean menciptakan banyak file. Mengapa
Tujuan utama Netflix adalah untuk mendukung setiap perangkat yang terhubung ke Internet. Perusahaan mulai beroperasi pada 2007 di platform Microsoft Windows. Seiring waktu, banyak perangkat lain ditambahkan - Roku, LG, Samsung Blu-ray, Apple Mac, Xbox 360, LG DTV, Sony PS3, Nintendo Wii, iPad Apple, iPhone Apple, Apple TV, Android, Kindle Fire dan Comcast X1.Secara total, Netflix mendukung 2.200 perangkat yang berbeda. Untuk masing-masing dari mereka ada format video yang terlihat terbaik. Jika Anda menonton Netflix di iPhone, Anda akan melihat video yang terlihat paling baik di iPhone. Perusahaan menyebut semua format video berbagai profil pengkodean. Netflix juga membuat file yang dioptimalkan untuk kecepatan jaringan yang berbeda. Jika Anda menonton file di jaringan berkecepatan tinggi, Anda akan melihat video dengan kualitas lebih baik daripada jika Anda menontonnya di jaringan yang lebih lambat.Ada juga file untuk berbagai format audio. Audio dikodekan dalam tingkat kualitas dan bahasa yang berbeda. Selain itu, ada file dengan subtitle. Video dapat memiliki beberapa subtitle dalam berbagai bahasa. Ada beberapa opsi tampilan yang berbeda untuk setiap video. Apa yang Anda lihat tergantung pada perangkat Anda, kualitas koneksi, tarif layanan dan pilihan bahasa.Jadi ada berapa file?
Untuk seri ini, The Crown Netflix menyimpan sekitar 1.200 file. Musim kedua Stranger Things memiliki lebih banyak file. Itu ditembak dalam resolusi 8K dan memiliki sembilan episode. File sumber memakan banyak terabyte data. Butuh 190.000 jam prosesor untuk mengkodekan hanya satu musim. Hasilnya adalah 9.570 file video, audio dan teks yang berbeda.Sekarang mari kita lihat bagaimana Netflix memainkan semua file ini.Tiga strategi berbeda untuk streaming video
Netflix memiliki tiga strategi berbeda untuk memutar video streaming - CDN kecilnya sendiri, CDN pihak ketiga, dan Open Connect. Mari kita mulai dengan definisi CDN. CDN adalah jaringan distribusi konten. Untuk Netflix, konten tentu saja adalah file video yang telah kita bahas di bagian sebelumnya. Berbagi berarti bahwa file disalin dari lokasi pusat melalui jaringan dan disimpan pada komputer yang didistribusikan di seluruh dunia. Di Netflix, lokasi penyimpanan pusat untuk file adalah S3.Mengapa membuat CDN?
Idenya sederhana: Anda perlu menempatkan video sedekat mungkin dengan pengguna, mendistribusikan komputer di seluruh dunia. Ketika seorang pengguna ingin menonton video, temukan komputer yang paling dekat dengannya dan atur aliran dari sana ke perangkatnya. Manfaat terbesar dari CDN adalah kecepatan dan keandalan.Bayangkan Anda sedang menonton video di London, dan itu sedang dikirimkan kepada Anda dari Portland, Oregon. Aliran video harus melalui banyak jaringan, termasuk kabel bawah laut, sehingga koneksi bisa lambat dan tidak dapat diandalkan. Dengan memindahkan video lebih dekat ke orang-orang yang menontonnya, Anda dapat membuat sensasi menonton video menjadi yang paling cepat dan dapat diandalkan.Setiap lokasi komputer yang menyimpan video disebut point of presence (PoP). Setiap PoP adalah lokasi fisik dengan akses internet. Ada server, router, dan peralatan telekomunikasi lainnya. Kami akan membicarakan PoP nanti.CDN pertama terlalu kecil
Pada 2007, ketika Netflix pertama kali memperkenalkan layanan streaming, ia memiliki 36 juta pelanggan di 50 negara, yang menonton lebih dari satu miliar jam video setiap bulan, dan yang menerima beberapa terabit data per detik. Untuk mendukung layanan ini, Netflix telah membangun CDN sederhana di lima lokasi berbeda di Amerika Serikat. Katalog video perusahaan cukup kecil, dan semua file disimpan di semua tempat.CDN kedua terlalu besar
Pada 2009, Netflix memutuskan untuk menggunakan CDN pihak ketiga. Saat itu, biaya CDN mulai turun. Menggunakan jaringan pihak ketiga adalah langkah cerdas untuk Netflix. Mengapa membuang-buang waktu dan upaya membangun jaringan Anda jika Anda dapat segera mencapai tempat di planet ini dengan CDN yang ada?Netflix telah bekerja untuk menyediakan layanan CDN dengan perusahaan-perusahaan seperti Akamai, Limelight dan Level 3. Tidak ada yang salah dengan menggunakan CDN pihak ketiga. Faktanya, hampir semua perusahaan melakukan ini. Misalnya, NFL menggunakan layanan Akamai untuk menampilkan kompetisi sepak bola Amerika secara langsung. Tanpa membuat CDN sendiri, Netflix meluangkan waktu untuk mengerjakan proyek-proyek prioritas lainnya.Perusahaan menghabiskan banyak waktu dan upaya mengembangkan pelanggan yang lebih cerdas. Netflix menciptakan algoritma yang beradaptasi dengan perubahan kondisi jaringan. Bahkan jika terjadi kesalahan, jaringan atau server kelebihan, perusahaan ingin pengguna memiliki gambar terbaik. Salah satu teknologi yang dikembangkan oleh perusahaan - beralih ke sumber video lain - misalnya, ke CDN lain atau ke server lain - untuk mencapai hasil terbaik.Pada saat yang sama, Netflix menghabiskan banyak upaya mendukung semua layanan AWS yang kami sebutkan sebelumnya. Netflix menyebut layanan AWS sebagai pesawat referensi. Pesawat kontrol adalah istilah jaringan untuk bagian dari sistem yang mengontrol segala sesuatu yang lain. Dalam tubuh Anda, otak Anda adalah bidang kendali - ia mengendalikan segala sesuatu yang lain.Dan kemudian Netflix memutuskan bahwa mereka dapat meningkatkan layanan dengan mengembangkan CDN mereka sendiri.Open Connect sempurna
Pada 2011, Netflix menyadari bahwa pada skala mereka, mereka membutuhkan solusi CDN khusus untuk memaksimalkan efisiensi jaringan. Distribusi video adalah kompetensi inti perusahaan, dan dapat menjadi keunggulan kompetitif yang sangat besar. Oleh karena itu, Netflix mulai mengembangkan Open Connect, CDN khusus miliknya. Itu dimulai pada 2012. Open Connect memiliki banyak keunggulan:- Dia tidak begitu mahal. CDN pihak ketiga lebih mahal. Melakukannya sendiri berarti menghemat banyak uang.
- Kualitas lebih baik. Netflix beralasan bahwa dengan mengendalikan seluruh jalur video - transcoding, CDN, klien, perangkat - itu dapat memberikan kualitas layanan yang sangat baik.
- . . , .
CDN pihak ketiga harus mendukung pengguna yang membutuhkan akses ke konten apa pun dari mana saja di dunia. Tugas Netflix jauh lebih sederhana.Netflix tahu penggunanya dengan pasti saat mereka mendaftar. Dia tahu video mana yang akan ditransfer. Hanya karena Anda hanya perlu mentransfer aliran video besar, Anda dapat mengambil banyak tindakan untuk secara cerdas mengoptimalkan jaringan yang tidak dapat dilakukan oleh CDN lain. Netflix juga tahu banyak tentang pelanggannya. Perusahaan tahu video mana yang mereka sukai dan kapan mereka suka menontonnya.Dengan pengetahuan itu, Netflix telah membangun CDN berkecepatan tinggi. Mari kita lihat lebih dekat bagaimana Open Connect bekerja.Buka Sambungkan Perangkat
Ingat bagaimana kita membahas bahwa komputer CDN didistribusikan di seluruh dunia? Netflix telah mengembangkan sistem komputer penyimpanan video sendiri. Netflix menyebutnya perangkat Open Connect (Open Connect Appliances, OCA). Beginilah salah satu dari instalasi OCA awal:

Dalam foto - beberapa OCA sekaligus. OCA dikelompokkan dalam beberapa kelompok server. Setiap OCA adalah server cepat yang dioptimalkan untuk output file besar, dengan banyak hard drive atau flash drive yang menyimpan video. Seperti inilah tampilan salah satu server OCA:

Untuk tujuan yang berbeda, ada beberapa jenis OCA. Ada OCA besar yang mampu menyimpan seluruh direktori video perusahaan. Ada OSA kecil yang hanya dapat menyimpan bagian dari direktori video. OCA kecil diisi dengan file video setiap hari selama jam sibuk selama caching proaktif.
Dalam hal peralatan, OSA tidak ada yang luar biasa. Mereka didasarkan pada komponen PC konvensional, dan berbagai pemasok merakitnya dalam berbagai paket. Anda dapat membeli komputer yang sama jika Anda mau. Harap dicatat bahwa semua komputer Netflix berwarna merah. Perusahaan secara khusus memesannya agar sesuai dengan warna logo.
Dalam hal perangkat lunak, OSA menggunakan OS FreeBSD dan nginx sebagai server web. Ya, setiap OSA adalah server web. Streaming video menggunakan nginx. Jika nama-nama ini tidak memberi tahu Anda apa pun - jangan berkecil hati, saya sertakan hanya untuk melengkapi gambar.
Jumlah OSA lokal tergantung pada keandalan yang ingin dicapai Netflix di tempat tertentu, jumlah lalu lintas yang dilayaninya, dan persentase lalu lintas yang dapat dikirim pusat ini sebagai aliran. Ketika Anda mengklik "mainkan," Anda menonton streaming video yang berasal dari OSA tertentu - seperti yang di atas, terletak di dekat Anda.
Untuk pengalaman menonton terbaik, Netflix ingin melakukan cache video langsung di rumah Anda. Tetapi untuk sekarang, ini tidak praktis. Opsi paling nyaman berikutnya adalah menempatkan Netflix mini di dekat rumah Anda. Bagaimana ini bisa dilakukan?
Di mana Netflix menjadi tuan rumah OCA?
Netflix mendistribusikan sejumlah besar video dari ribuan server yang berlokasi di lebih dari 1000 pusat data di seluruh dunia. Lihatlah peta lokasi server video ini:

Layanan video lainnya, seperti YouTube dan Amazon, mengirimkan video melalui jaringan mereka sendiri. Perusahaan-perusahaan ini telah benar-benar membangun jaringan global mereka sendiri untuk mengirimkan video ke pengguna. Ini sangat rumit dan mahal. Netflix mengambil pendekatan yang sangat berbeda untuk membangun CDN.
Netflix tidak berfungsi di jaringannya, itu tidak bekerja dari pusat data sendiri. Sebaliknya, penyedia layanan Internet (ISP) setuju untuk menjadi tuan rumah OCA. Netflix menawarkan penyedia gratis untuk mengintegrasikan server mereka ke dalam jaringan mereka, di samping itu, menempatkan OSA di dekat
titik pertukaran lalu lintas (lokasi pertukaran internet, IXP).
Strategi ini memungkinkan Netflix untuk tidak membangun pusat data sendiri, tetapi perusahaan mendapatkan semua keuntungan berada di pusat seperti itu - itu hanya milik orang lain. Cerdik! Mari kita pisahkan beberapa paragraf terakhir menjadi langkah-langkah sederhana.
Menggunakan ISP untuk membuat CDN
ISP adalah penyedia layanan internet Anda. Ini adalah orang yang memberi Anda Internet sebagai layanan. Itu bisa Verizon, Comcast, Beeline atau salah satu dari ribuan lainnya. Hal utama adalah bahwa ISP berlokasi di seluruh dunia dan dekat dengan pelanggan. Dengan hosting OCA di pusat data ISP, Netflix juga didistribusikan di seluruh dunia dan dekat dengan pelanggannya.
Menggunakan IXP untuk membuat CDN
Titik pertukaran lalu lintas adalah pusat data tempat ISP dan CDN bertukar lalu lintas antar jaringan. Ini seperti pergi ke pesta untuk bertukar hadiah Natal dengan teman-teman. Berbagi lebih mudah jika semua orang berkumpul di satu tempat.
IXP tersebar di seluruh dunia:

Seperti apa rupa IXP di London:

Jika Anda mendekati kabel serat optik kuning ini, inilah yang akan Anda lihat (berdasarkan titik pertukaran AMS-IX di Amsterdam):

Setiap kabel menghubungkan satu jaringan ke jaringan lainnya. Inilah perbedaan jaringan pertukaran traffic satu sama lain. IXP seperti persimpangan jalan raya, hanya dengan kabel:

Bagi Netflix, ini adalah keuntungan lain. IXP terletak di seluruh dunia. Dengan menempatkan OSA di IXP, perusahaan mungkin tidak lagi memiliki pusat data sendiri.
Video secara proaktif di-cache di OSA
Netflix memiliki banyak video yang terletak di S3. Komputer transmisi video terletak di seluruh dunia. Hanya satu hal yang hilang: videonya sendiri! Netflix menggunakan proses yang disebut penyimpanan proaktif untuk menyalin video secara efisien ke OCA.

Apa itu cache cache - cache]? Ini adalah tempat yang sering terletak di tanah di mana kartrij rahasia, makanan, dan harta disimpan secara diam-diam. Apakah Anda tahu bagaimana tupai menyembunyikan kacang untuk musim dingin? Setiap tempat di mana tupai menyembunyikan kacang adalah cache. Di musim dingin, setiap tupai dapat menemukan cache kacang dan mengunyahnya. Penjelajah Arktik mengirim tim kecil ke depan untuk menyimpan makanan, bahan bakar, dan persediaan lain di sepanjang jalur yang mereka ikuti. Tim yang lebih besar berjalan di belakang berhenti di setiap cache dan mengembalikan. Baik protein dan peneliti Arktik bekerja secara proaktif; mereka melakukan sesuatu di muka untuk mempersiapkan masa depan.
Setiap OCA adalah cache video yang kemungkinan besar ingin Anda tonton. Netflix melakukan cache video, memprediksi apa yang ingin Anda tonton. Di seluruh dunia, Netflix tahu dengan pasti bahwa pelanggannya suka menonton. Ingat kami mengatakan bahwa Netflix adalah perusahaan yang digerakkan oleh data? Dia menggunakan data popularitas untuk memprediksi video mana yang pelanggannya ingin tonton besok di mana saja. Dengan tempat di sini dimaksudkan cluster OSA yang terletak di ISP atau IXP. Perusahaan menyalin video yang diprediksi ke satu atau lebih OCA di masing-masing tempat. Ini disebut tata letak pendahuluan. Video di-host di OSA sebelum ada yang memintanya. Akibatnya, pelanggan menerima layanan yang sangat baik. Video yang ingin mereka tonton sudah dekat dengan mereka, dalam bentuk yang siap ditonton.

Netflix bekerja dengan apa yang disebut cache yang terhubung. OCA kecil di-host oleh ISP atau IXP. Mereka terlalu kecil untuk memenuhi seluruh katalog video. Di tempat lain, ada OSA yang memiliki hampir seluruh direktori video Netflix. Dan di tempat lain ada tempat di mana OSA di mana mereka berisi seluruh katalog Netflix. Mereka mendapatkan video dari S3.
Setiap malam, OSA bangun dan memilih layanan AWS untuk jenis video apa yang ia butuhkan. Layanan mengiriminya daftar video yang seharusnya, dibangun berdasarkan prediksi. Setiap OCA bertanggung jawab untuk memiliki semua video dalam daftar ini. Jika salah satu OCA di satu tempat memiliki salah satu video yang diperlukan, maka OCA caching akan menyalin video ini darinya. Kalau tidak, video akan ditemukan dan diambil dari beberapa OSA, yang terletak tidak terlalu jauh.
Karena Netflix memperkirakan akan populer besok, selalu ada kekurangan satu hari sebelum video diperlukan di OSA. Ini berarti bahwa video dapat disalin dalam waktu tenang, di luar beban puncak, yang sangat mengurangi penggunaan bandwidth ISP.
Open Connect tidak pernah melewatkan cache. Kehilangan adalah ketika video tertentu diminta dari OSA, dan dia menjawab bahwa dia tidak memilikinya. Kehilangan terjadi pada CDN lain karena mereka tidak mampu menyalin semua konten di mana pun. Karena Netflix tahu semua video yang perlu di-cache, ia tahu persis di mana dan video mana pada titik apa. Jika OSA kecil tidak memiliki video yang diinginkan, itu akan dijamin oleh salah satu OSA utama.
Dan mengapa Netflix tidak hanya menyalin semua videonya ke semua OCA di dunia? Direktori videonya terlalu besar untuk itu. Pada 2013, volume katalog melebihi 3 petabyte; seperti apa dia hari ini, saya tidak tahu, saya hanya bisa berasumsi lebih dari itu. Itulah sebabnya perusahaan telah mengembangkan metode untuk memilih file video yang perlu disimpan pada setiap OSA, menggunakan data yang memprediksi bahwa pelanggan akan ingin menonton.
Ambil sebuah contoh. "House of Cards" adalah pertunjukan yang sangat populer. OSA mana yang harus disalin? Kemungkinan besar, di mana saja, karena pelanggan dari seluruh dunia ingin menontonnya. Tetapi bagaimana jika videonya tidak sepopuler House of Cards? Netflix memutuskan tempat salinan harus disimpan untuk memenuhi kebutuhan semua pelanggan langsung.
Di satu tempat, video paling populer disalin ke banyak OSA. Semakin populer videonya, semakin banyak server yang akan menyimpan salinannya. Mengapa Jika video yang sangat populer hanya memiliki satu salinan, maka aliran video ke semua klien akan membebani server.
Video tidak dianggap siap untuk didistribusikan jika disalin ke hanya satu OSA. Netflix ingin dapat memutar konten yang sama pada saat yang sama di seluruh dunia. Hanya ketika ada jumlah OSA yang cukup dengan jumlah salinan video yang cukup untuk menyediakannya dengan kualitas yang tepat, video dianggap siap untuk ditonton.
Misalnya, musim kedua pertunjukan Daredevil pada tahun 2016 adalah pertama kalinya Netflix merilis semua episode dari seri pada semua perangkat di semua negara pada waktu yang bersamaan.
Penempatan OSA: mengapa penyedia membutuhkan ini?
Mengapa penyedia setuju untuk meng-host cluster OSA? Pada pandangan pertama, ini terlalu murah hati - tetapi akan menarik bagi Anda untuk mengetahui bahwa keuntungan pribadi sebenarnya terlibat di sini. Untuk memahami ini, kita perlu berbicara tentang cara kerja jaringan. Dalam buku ini, kami membahas bahwa akses ke layanan cloud adalah melalui Internet. Dalam kasus Netflix, hal ini tidak terjadi - ketika melihat video melalui aplikasi Netflix, ini berkomunikasi dengan AWS melalui Internet. [tidak terlalu jelas apa perbedaan yang ada dalam pikiran penulis // kira-kira. perev.]
Internet adalah interkoneksi jaringan. Anda memiliki penyedia yang menyediakan akses Internet. Saya mendapatkan layanan internet dari Comcast. Ini berarti bahwa rumah saya terhubung ke jaringan Comcast melalui serat optik. Jaringan Comcast milik mereka - ini bukan Internet, Internet adalah sesuatu yang lain.
Misalkan saya ingin melakukan pencarian di Google, dan saya mengetik permintaan di browser dan tekan Enter. Permintaan saya pertama kali melalui jaringan Comcast. Google tidak terletak di jaringan Comcast. Pada titik tertentu, permintaan saya harus pergi ke Jaringan Google. Untuk ini, ada Internet. Internet menghubungkan jaringan Comcast ke jaringan Google. Ada protokol routing yang bekerja dengan cara pengontrol lalu lintas jalan dan lalu lintas jaringan langsung. Ketika permintaan saya dikirim ke Internet, itu terletak di luar jaringan Comcast dan di luar Jaringan Google. Terletak di
tulang punggung Internet . Internet terhubung dari banyak jaringan pribadi yang memutuskan untuk berinteraksi satu sama lain. IXP adalah salah satu cara jaringan berkomunikasi satu sama lain.
Di AS ada peta jaringan serat yang jauh:

Netflix melakukan yang berikut dengan Open Connect-nya: ia meng-host cluster OSA dalam jaringan ISP. Ini berarti bahwa jika saya menonton video Netflix, saya berbicara dengan OSA yang terletak di jaringan Comcast. Semua lalu lintas video saya berjalan di jaringan mereka, dan tidak online.
Kunci untuk menskala pengiriman video adalah sedekat mungkin dengan pengguna. Ketika Anda melakukan ini, Anda tidak menggunakan tulang punggung Internet. Permintaan dipenuhi di bagian lokal jaringan. Kenapa itu bagus? Ingat, kami mengatakan bahwa Netflix sudah mengonsumsi lebih dari 37% lalu lintas Internet di AS. Jika ISP tidak bekerja sama dengan perusahaan, itu akan menggunakan lebih banyak Internet. Internet tidak dapat menangani semua lalu lintas. Penyedia perlu menambahkan lebih banyak kapasitas, yang sangat mahal.
Sekarang hampir 100% konten Netflix ditransmisikan dalam jaringan penyedia. Ini mengurangi biaya pemeliharaan jaringan, karena tidak menyumbat Internet. Pada saat yang sama, pelanggan Netflix menerima video berkualitas tinggi, dan kinerja jaringan meningkat untuk semua orang. Semua orang menang.
Open Connect Handal dan Tangguh
Kami telah membahas bagaimana Netflix meningkatkan keandalan sistem dengan bekerja di tiga wilayah AWS. Arsitektur Open Connect mencapai tujuan yang sama. Ini mungkin tidak jelas, tetapi OCA independen satu sama lain. OCA beroperasi sebagai kepulauan pengiriman video mandiri. Pelanggan yang menerima video dari satu OSA tidak menderita kegagalan OSA lainnya.
Apa yang terjadi ketika OSA gagal? Program klien yang Anda gunakan langsung beralih ke OSA lain dan melanjutkan kembali tampilan. Apa yang terjadi jika terlalu banyak orang menggunakan OCA di satu tempat? Program klien menemukan OSA yang kurang dimuat. Apa yang terjadi jika jaringan yang digunakan untuk mengirimkan video kelebihan beban? Hal yang sama - program menemukan OSA lain di jaringan yang berfungsi lebih baik. Open Connect adalah sistem yang sangat andal dan toleran terhadap kesalahan.
Netflix mengontrol klien
Netflix secara cerdik menangani kegagalan karena mengontrol klien di semua perangkat. Perusahaan itu sendiri mengembangkan aplikasi untuk Android dan iOS, sehingga kami dapat mengharapkannya mengendalikannya. Tetapi bahkan pada platform seperti Smart TV, di mana Netflix tidak membuat klien, ia masih mengendalikannya karena ia mengontrol paket pengembangan aplikasi (SDK).
SDK adalah sekumpulan program pengembangan yang memungkinkan Anda membuat aplikasi. Setiap aplikasi Netflix membuat permintaan AWS dan memutar video menggunakan SDK. Dengan mengendalikan SDK, Netflix dapat secara terus-menerus dan secara real time beradaptasi dengan jaringan yang lambat, OSA yang gagal, dan masalah lain yang mungkin terjadi.
Dan akhirnya: inilah yang terjadi ketika Anda mengklik "bermain"
Kami melangkah jauh ke arah ini, dan kami belajar banyak. Inilah yang kita ketahui saat ini:
- Netflix dapat dibagi menjadi tiga bagian: backend, klien, dan CDN.
- Semua permintaan pelanggan ditangani oleh AWS.
- Semua video ditransfer dari perangkat Open Connect (OCA) terdekat ke CDN.
- Netflix bekerja dengan tiga wilayah AWS dan biasanya dapat mengatasi kegagalan di wilayah mana pun sehingga tidak seorang pun akan menyadarinya.
- Konten baru dikonversi di perusahaan ke dalam banyak format berbeda, sehingga Anda dapat memilih opsi yang paling sesuai berdasarkan jenis perangkat, kualitas jaringan, lokasi geografis, dan tingkat pelanggan.
- Setiap hari, di Open Connect, perusahaan mendistribusikan video di seluruh dunia tanpa memprediksi pelanggan apa yang ingin ditonton di berbagai belahan dunia.
Berikut adalah gambar yang dijelaskan Netflix menggunakan proses pemutaran:

Mari kita selesaikan:
- Anda memilih video untuk ditonton menggunakan klien yang berjalan di beberapa perangkat. Klien mengirimkan permintaan pemutaran, yang menunjukkan video mana yang Anda butuhkan, ke layanan Playback Apps yang didukung AWS.
- Kami belum membahas ini sebelumnya, tetapi sebagian besar dari apa yang terjadi ketika Anda mengklik "bermain" terkait dengan perizinan. Tidak setiap bagian dunia memiliki lisensi untuk melihat setiap video. Netflix harus menentukan apakah Anda memiliki lisensi untuk menonton video tertentu. Kami tidak akan membahas topik yang membosankan ini, tetapi perlu diingat bahwa ini terjadi setiap saat. Salah satu alasan Netflix mulai membuat kontennya sendiri adalah upaya untuk menghindari masalah lisensi [dan masih ada situasi yang absurd ketika perusahaan tidak dapat menampilkan seri produksi Netflix karena menjual haknya kepada penyedia konten lokal - belum lagi semua wilayah dilarang untuk pekerjaan perusahaan Amerika // kira-kira. diterjemahkan.]. Netflix ingin merilis acara untuk semua orang di seluruh dunia secara bersamaan. Membuat konten Anda sendiri adalah cara termudah untuk menghindari masalah lisensi.
- Dengan semua informasi yang relevan, layanan Playback Apps mengembalikan URL ke beberapa, hingga sepuluh, server OSA. Ini adalah URL yang sama yang dapat Anda lihat di browser Anda. Netflix menggunakan alamat IP Anda dan informasi dari penyedia Anda untuk menentukan kelompok OSA mana yang terbaik untuk Anda.
- Klien menganalisis situasi dan memilih OCA. Dia memeriksa kualitas koneksi dengan masing-masing. Ini akan terhubung ke OSA tercepat dan paling dapat diandalkan. Klien secara konstan melakukan pemeriksaan ini selama pemutaran video.
- Klien sedang mencoba memilih cara terbaik untuk menerima konten dari OSA.
- Klien terhubung ke OSA dan mulai mengeluarkan aliran video pada perangkat Anda.
- Saat menonton video, apakah Anda memperhatikan bahwa kualitas gambar berubah? Terkadang akan ada piksel, dan setelah beberapa waktu gambar kembali ke kualitas tinggi lagi? Ini karena klien beradaptasi dengan kualitas jaringan. Jika kualitas turun, maka klien akan mengurangi kualitas video. Jika kualitasnya turun terlalu banyak, klien akan beralih ke OSA lain.
Inilah yang terjadi ketika Anda mengklik "main" di Netflix. Siapa yang akan berpikir bahwa hal yang begitu sederhana, seperti menonton video, bisa sangat rumit?