Soru YouTube ölçek dağılımına izin veren teknolojiler
Youtube bildiğimiz gibi, muazzam. Binlerce eşzamanlı kullanıcıya, video başına en az 2 megabayt akış sağlıyor. Açıkçası, bu çok fazla trafik alacaktır ... herhangi bir sunucu için çok fazla.
Hangi ağ teknolojileri itmeye izin veriyor? Günde 4 milyar video mu?
34
2018-03-13 05:24
Menşei
Cevaplar:
Arka uçta ölçekleme
Çok basit bir kurulumda, bir DNS girişi bir sunucuya ait olan bir IP'ye gider. Dünyadaki herkes bu tek makineye gider. Yeterli trafikle, YouTube'un boyutu olmak için çok uzun sürecek çok fazla işlem yapmanız gerekiyor. Basit bir senaryoda, bir yük dengeleyici ekleriz. Yük dengeleyicinin işi, tek bir sunucu olarak görünürken trafiği çeşitli arka uç sunucularına yönlendirmektir.
YouTube'un sahip olduğu kadar fazla veriyle, tüm sunucuların tüm videolara hizmet vermesini beklemek çok fazla olacaktır. Bu nedenle, eklenecek başka bir dolaylı katmanımız daha vardır: Kırma işlemi. Bir örnekte, bir sunucu "A" ile başlayan, diğeri "B" ile başlayan her şeyden sorumludur.
Kenar yakınlaşıyor
Ancak, sonuçta, bant genişliği sadece yoğunlaşıyor ve bir sürü veriyi bir odaya taşıyorsunuz. Yani, şimdi süper popüler olduğumuz için, o odadan çıkarıyoruz. Buradaki iki teknoloji, İçerik Dağıtım Ağları ve Anycasting.
Tüm dünyada talep edilen bu büyük statik dosyalarımın olduğu yerde, barındırma sunucularına doğrudan bağlantıları işaretlemeyi bıraktım. Benim yaptığım şey, CDN sunucum için bir bağlantı oluşturuyor. Birisi bir videoyu görüntülemeyi istediğinde, CDN sunucumdan bunun için soruyorlar. CDN zaten videoya sahip olmaktan, hosting sunucusundan bir kopyasını istemekten veya beni yönlendirmekten sorumludur. Bu, ağın mimarisine bağlı olarak değişecektir.
CDN nasıl yardımcı olur? Eh, bir IP aslında tüm dünyada birçok yerde bulunan birçok sunucuya ait olabilir. İsteğiniz bilgisayarınızı terk ettiğinde ve ISS'nize gittiğinde, yönlendiricileri bu IP'ye en iyi yolu (en kısa, en hızlı, en düşük maliyetli ... ne olursa olsun) eşler. Çoğu zaman bir CDN için, bu sizin en yakınınızda veya yanında olacak 1. kat ağ.
Bu yüzden, YouTube'dan bir video istedim. Depolandığı gerçek makine en azından
iad09s12.v12.lscache8.c.youtube.com ve
tc.v19.cache5.c.youtube.com. Bunlar benim web sayfamın kaynağında ortaya çıkıyor ve bir çeşit indeksleme sunucusu tarafından sağlanıyor. Şimdi, Maine'den, tc19 sunucusunun Miama, Florida'da olduğunu gördüm. Washington'dan, tc19 sunucusunun San Jose, California'da bulunduğunu gördüm.
51
2018-03-13 05:49
Büyük siteler için çeşitli teknikler kullanılır.
www.youtube.com -> herhangi bir sayıda IP adresi
DNS’e bakalım:
www.youtube.com is an alias for youtube-ui.l.google.com.
youtube-ui.l.google.com has address 18.104.22.168
youtube-ui.l.google.com has address 22.214.171.124
youtube-ui.l.google.com has address 126.96.36.199
youtube-ui.l.google.com has address 188.8.131.52
youtube-ui.l.google.com has address 184.108.40.206
youtube-ui.l.google.com has address 220.127.116.11
youtube-ui.l.google.com has address 18.104.22.168
youtube-ui.l.google.com has address 22.214.171.124
youtube-ui.l.google.com has address 126.96.36.199
youtube-ui.l.google.com has address 188.8.131.52
youtube-ui.l.google.com has address 184.108.40.206
youtube-ui.l.google.com has IPv6 address 2001:4860:800f::88
Bu yüzden www.youtube.com aslında birkaç IP adresine gidebilir.
herhangi bir IP adresi
Tek bir IP, aynı anda herhangi bir sayıda Otonom Sistem (internet üzerinde bir Ağ) tarafından ele alınabilir. Örneğin, Google’ın yanı sıra kök DNS sunucularının birçoğu
220.127.116.11 DNS sunucusu, dünyanın dört bir yanındaki birçok noktada yayınlanmıştır. Buradaki fikir şudur: eğer ABD'deyseniz, ABD ağına bastınız ve Birleşik Krallık'ta iseniz İngiltere ağına bastınız.
farklı sunucudan gelen medya
Sadece sen olduğun için
www.youtube.comBu, tüm içeriğin aynı sunucudan gelmesi gerektiği anlamına gelmez. Bu sitede, statik kaynaklar
sstatic.net yerine
serverfault.com.
Örneğin, izlersek Kaley Cuoco'nun kölesi Leia PSA medyanın sunulduğunu görüyoruz
v10.lscache5.c.youtube.com.
çoklu internet bağlantısı
Sizi temin ederim, Youtube'un birden fazla internet bağlantısı var. Diğer tüm tekniklere rağmen, Youtube gerçekten tek bir site ve tek bir sunucu olsa bile, teoride video hizmeti verdiği her ağa bağlantılar olabilir. Gerçek dünyada elbette mümkün değil, ama düşünün.
Bu fikirlerin herhangi biri veya tamamı (ve daha fazlası!) Bir İçerik Dağıtım Ağı. Daha fazla bilgi edinmek isterseniz o makaleyi okuyun.
23
2018-03-13 05:42
YouTube’un (Google’ın) yalnızca bir sunucusunun olduğunu hayal etmekte yanlışsınız; bu inforgraphic Bu hizmeti destekleyen sistemin ölçeğini göstermeye yardımcı olabilir.
Sadece bir noktaya sahip olsanız bile, yük dengeleyici ve tüm gibi araçları kullanarak, tek bir ismin arkasında birden fazla sunucuya ve hatta IP'ye sahip olabilirsiniz.
Ancak, Google'ın çok fazla sayıda varlığa sahip olduğu ve AnyCast gibi araçları kullandığı ve aynı IP'yi İnternet'te birden fazla yerde yayınlayabileceği ve altyapıya sahip olmak için en yakın sunucu havuzuna yönlendirdiği bir araç kullanıldı.
12
2018-03-13 05:27
Bazı şeylerin ağ tarafına dokunacağım: Google'ın dünyanın dört bir yanındaki 73 benzersiz veri merkezinde (Kendileri de dahil değil) bir Varlık Noktası (PoP) var. Onlar bir üyesi 69 benzersiz internet borusu. Google, peeringdb'de listelenen diğer ağlardan daha fazla veri merkezlerinde ve İnternet Alışverişi noktasında.
Google’ın toplam İnternet değişim kapasitesi> 1,5 TB / sn. Google’ın 100 Mbps’lik trafiğe sahip ağları için 1,5 TB’nın ayrıldığı, ancak 2-3 Gb / sn’yi tahmin ettiğimden daha az olduğu. Sonra 'yeterli hacim', özel peering'e (PNI) taşınırsınız.
Internet Exchange peering ve özel peering (AS15169 ile) ek olarak, YouTube da bir transit ağ çalışır: AS43515, ve başka bir ağ ücretli eşleme / taşma, AS36040 olduğunu varsayalım. Google ayrıca çalışır Google Küresel Önbellek ISP'lerin kendi ağlarında daha da yerel olarak konuşlandırılması için sunucular. (Peeringdb'den veri, bgp.he.net).
Deneyimlerime dayanarak, YouTube'un yalnızca videodan hizmet sunmak için bir konum seçmesi için IP konum belirleme veya Anycast'den çok daha fazlasını kullandığını düşünüyorum.
Google, büyük bir küresel omurga ağını çalıştırıyor karanlık lifleri var, onlar sahip finanse edilen denizaltı kabloları. YouTube’un oluşturduğu trafik hacmi çok büyük! YouTube’un en yoğun trafik hacmi> 12 TB’tır. Google temsil en az% 7 Tüm Inter-domain internet trafiğinin (ve muhtemelen% 10'unun).
Dolayısıyla, ağ perspektifinden sorunuzu yanıtlamak için, YouTube gibi ölçeklendirmek için, ağınızda yer alan fiberden, WDM donanımına ve yönlendiricilere kadar çok büyük bir yatırım yapmanız gerekir. İçeriği ve ağı kullanıcılarınıza mümkün olduğunca yakınlaştırmanız gerekir. Bu genellikle peering, IXs ve belki biraz transit anlamına gelir. Kullanıcılara, trafiği olabildiğince eşit dağıtılmış ve ucuz olarak tutmak için içeriğin nereden alınacağını akıllıca söyleyebilmeniz gerekir. Ve elbette, günde 4 milyar görüntüyü saklamak, işlemek, dönüştürmek ve sunmak için devasa bir sunucu altyapısına sahip olmanız gerekiyor!
Sunucu tarafını merak ediyorsanız, Blog yazısı son yayınlanan veri merkezi görüntülerinin bazılarını yıkıyor.
3
2018-04-22 23:27
Büyük ölçekli sistemler ve bu şirketlerin kullandığı teknolojiler hakkında daha fazla bilgi edinmek istiyorsanız, şu an en iyi kaynak http://highscalability.com
Google veya Akamai gibi en büyük şirketler, her zaman kendi yazdıkları / oluşturdukları bileşenlere sahiptir. (örneğin Akamai, hizmetleri için bir web sunucusu geliştirdi)
2
2018-03-13 07:43