Google'ın App Engine'ini statik dosyalar için CDN olarak kullanma


14

Statik dosyalarımı Google'ın App Engine'ine taşımayı planlıyorum. Bunun iyi bir fikir olup olmadığını merak ediyordum.

Google'ın dosyalarınızı birden fazla yerde önbelleğe almasının mümkün olduğunu okudum, bu bence iyi bir şey.

Kurulum ayrıca GAE eklentileri ile tutulmada oldukça kolay olmalıdır.

Ama yine de bunun performansı hakkında şüphelerim var. App Engine kurulumu, statik içerik sunmak için optimize edildi mi? Şimdi statik içeriğimi Nginx sunucum var, App Engine aynı şekilde çalışacak.

Bu yöntemi kullanan başka iniş çıkışlar var mı?

Yanıtlar:


16

Uygulama motoru bir bulut bilgi işlem platformudur ve CDN olarak tasarlanmamıştır. Verileriniz birden çok düğümde depolanabilirken, bu düğümler kenar önbellek düğümleri değildir, bu nedenle CDN'nin sağladığı avantajları sunmazlar. GAE ile çeşitli CDN'leri CloudHarmony.com hız testini kullanarak karşılaştırabilirsiniz . Bugün test ettiğimde sonuçlar şunlardı:

Order   Service Location    Type    Size    Time (secs) Rate (Mb/s)
1   Google AppEngine    download    1.00 MB     3.50    2.29
2   Google AppEngine    upload      512.00 KB   3.57    1.12
3   Google AppEngine    website     102.55 KB   0.75    1.07

Order   Service     Type        Size    Time (secs) Rate (Mb/s)
05  EdgeCast CDN    download    1.00 MB 1.03    7.77
02  Cotendo CDN     download    1.00 MB 1.08    7.37
12  Amz CloudFront  download    1.00 MB 1.11    7.19
10  CacheFly CDN    download    1.00 MB 1.29    6.19
08  Azure CDN       download    1.00 MB 1.36    5.90
07  Internap CDN    download    1.00 MB 1.47    5.43
09  VoxCAST CDN     download    1.00 MB 1.55    5.17
04  SimpleCDN       download    1.00 MB 1.65    4.84
06  MaxCDN          download    1.00 MB 1.69    4.73
03  Highwinds CDN   download    1.00 MB 1.81    4.43
11  Akamai CDN      download    1.00 MB 2.22    3.60
01  LimeLight CDN   download    1.00 MB 2.34    3.42

CDN'nin dosya indirmeleri için GAE'den 2-7 kat daha hızlı olduğunu göreceksiniz.


İyi fikir. Tüm sistemi kurmayı bitirdim. Statik içerik sağlayan önceki Nginx kurulumumdan belirgin şekilde daha yavaş olduğunu fark ettim. Ancak bunun maliyeti oldukça düşük, bazı CDN'lerin fiyatlarını kontrol ettim ve oldukça yüksek. Bir CDN için düşük fiyatlı bir çözüm biliyor musunuz?
Saif Bechan

Pek sayılmaz. CDN'ler ile genellikle sizin için ne ödeme olsun. Tüm web sayfalarının CDN'ye ihtiyacı yoktur. Genellikle sadece büyük resimler, video veya veri dosyaları CDN barındırma hizmetinden gerçekten yararlanır.
Greg Bray

Bilginize. Bu güncel değil gibi görünüyor. AppEngine'ın en az 2016'dan beri varsayılan olan küresel uç noktayı kullanmanız koşuluyla önbellek kontrol başlıklarına göre işleri önbelleğe aldığına inanıyorum.
Howard Grimberg

1

MaxCDN (10 $ - 0,01 $ / GB için 1 TB) ve Akamai (100 $ - 0,10 $ / GB için 1 TB - VPS.net satıcısı aracılığıyla) bulduğumuz en iyi fiyatlı CDN'lerdir. MaxCDN, genel olarak düşük gecikme nedeniyle daha küçük dosyalar (yani web sayfası görüntüleri, CSS, vb.) İçin çok iyi performans gösteren Anycast'a dayanırken, Akamai önemli ölçüde daha fazla POP nedeniyle daha büyük dosyalarla daha iyi sonuç verir.


+1 Güzel küçük özet için teşekkürler. Raf alanı dosyalarına ve raf alanı sunucusuna bakıyordum. Onlar 'kullandıkça öde' dayanmaktadır. Bu konudaki yorumlarınız neler?
Saif Bechan

Rackspace bulut dosyaları dağıtım için Limelight'ın CDN'sini kullanır. Fiyat $ 0.22 / GB giden. CNAME (içeriğinizin bir raf alanı altında olması gerekir) gibi bazı özellikleri eksik ve yalnızca başlangıç ​​noktası çekmeyi destekliyorlar. En hızlı testimize dayanarak, performansları da alt uçtadır. Internap'ın CDN (SoftLayer tarafından yeniden satıldı) ve Edgecast (GoGrid ve Speedyrails tarafından yeniden satıldı) bu fiyat aralığında daha iyi seçeneklerdir.

İyi özet. Bence MaxCDNs küresel varlığının henüz oldukça sınırlı olduğunu belirtmeyi hak ediyor (Eylül 2010). ABD'de iyi bir kapsama alanı, Avrupa'da bir düğüm ve Asya / Pasifik'te sıfır düğümleri var (ancak genişlemeyi planlıyorlar): maxcdn.com/network.php
Jesper M

Anycast'a karşı KOK sayısının birbiriyle veya dosyaların boyutuyla ilgisi yoktur. Anycast, istekleri otomatik olarak en yakın veri merkezine yönlendirmek için kullanılan bir yönlendirme metodolojisidir ve KOK'lar, düşük gecikme süresi ile maksimum önbellek isabet oranı arasında doğru dengeyi bulmak için hem stratejik sayılar hem de yerleşim gerektirir.
Mani Gandham
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.