Kiedy zdecydowałeś się skorzystać z CDN? Jak zmierzyłeś „sukces” korzystania z CDN?

39

Kiedy zdecydowałeś się skorzystać z sieci dostarczania treści?

Jak zmierzyłeś „sukces” korzystania z sieci CDN, aby uzasadnić dodatkowe koszty?

Dodano nagrodę. Mając nadzieję na uzyskanie ciekawych historii od innych ludzi, którzy mieli istniejące witryny, które zmieniły się na lepsze (lub gorsze) po migracji do CDN.

artlung
źródło
Definicja „sukcesu” będzie zależeć od twoich celów.
Justin Scott,
Czy liczy się ktoś z CDN, który sam założył serwery na całej planecie? Robi to wiele projektów typu open source. Jednak zwykle sprzęt i przepustowość są przekazywane.
Tim Post
Jest to również BARDZO fajna pierwsza nagroda za stronę. Zapomniałem dodać +1 :)
Tim Post
Dzięki Tim! Prawie wypróbowałem i zaoferowałem tylko +50, ale pomyślałem, hej, zrób to dobrze! Uwielbiam historie o optymalizacjach, które poprawiają skalowalność (i okropności, które wymuszają te optymalizacje). highscalability.com to moja ulubiona strona.
artlung

Odpowiedzi:

4

Kiedy zdecydowałeś się skorzystać z CDN?

Na wczesnym etapie rozwoju. Strona jest dla fotografa, a jednym z najtrudniejszych elementów było upewnienie się, że czasy ładowania są praktycznie niewidoczne. Chociaż nie był to tak duży problem jak wideo, limit jednoczesnych żądań HTTP miał powodować problemy. Witryna jest rozwijana przy użyciu Google App Engine i chociaż oferują hosting statycznych treści, wystąpiły problemy z liczbą jednoczesnych żądań.

Jak zmierzyłeś „sukces” korzystania z CDN?

1) Łatwość integracji z systemem CMS tak, aby była niewidoczna. Spowodowało to poważne problemy techniczne po stronie serwera, odroczone zadania i długie żądania asynchroniczne AJAX - w końcu przepływ pracy CMS musiał zostać przerobiony (i nadal przerabiany).

2) Szybko. Korzystając z usługi Amazon Cloudfront zauważyliśmy ogromny wzrost prędkości, szczególnie na Wschodzie (do którego fotograf się przeprowadzi). Operacje przesyłania plików są również szybkie, jednak nie jesteśmy zadowoleni z szybkości zmian danych META (niektóre mogą być dość obszerne), szczególnie w przypadku propagacji S3 do CloudFront.

3) Tanio. Koszt CDN powinien być minimalny dla naszych potrzeb i oferować dużo pieniędzy za grosze. Naszym celem było zwiększenie prędkości użytkowników końcowych niż używanie samego Google App Engine, ale przy tych samych cenach i cieszę się, że udało się to osiągnąć.

Metalshark
źródło
8

Zdecydowaliśmy się na korzystanie z Amazon S3, kiedy zbudowaliśmy aplikację internetową, która dostarcza naszym abonentom gigabajty zdjęć i filmów HD. Dla nas było to absolutnie oczywiste. Oszczędności były oburzające. W S3 mieliśmy dwie przerwy w działaniu usług (wraz z każdym innym startupem internetowym korzystającym z S3). Nie były katastrofalne.

Następnie dodaliśmy CloudFront , co po prostu potwierdziło niesamowitość korzystania z CDN jak S3.

Po przejściu przez krzywą uczenia się, jak korzystać z S3 z perspektywy programowej, jest to tak niesamowity zasób do dyspozycji.

Używamy również S3 na kilku naszych witrynach konsultacyjnych o dużym natężeniu ruchu do hostowania filmów i dużych obrazów, co również obniżyło koszty. Nie tylko koszty, ale dzięki CloudFront jakość obsługi uległa poprawie.

jessegavin
źródło
2
Zbliżając się do rocznicy tej odpowiedzi, aby zaznaczyć, że S3 nie jest CDN, jest to prosta usługa przechowywania, jak sama nazwa wskazuje. Prosty, tani i niezawodny, chociaż, jak podkreśla Jesse, trochę trudny do nauczenia się CloudFront jest CDN i jest pełen wygranych, które dystrybuuje na całym świecie.
Malvolio
6

Zdecydowałem się skorzystać z CDN, aby zwiększyć prędkość pobierania plików dla użytkowników na całym świecie. Ogólnie rzecz biorąc, dostarczanie naprawdę małych plików można łatwo wykonać za pomocą nginx z oddzielnej subdomeny, ponieważ dodatkowe 30 milisekund na pobranie css nie zabije twojej aplikacji internetowej.

Jeśli chodzi o dostarczanie większych plików, CDN może naprawdę zabłysnąć, szczególnie te o globalnym zasięgu (takie jak Akamai i Limelight Networks), które zapewnią Ci ogromne prędkości na każdym kontynencie. Najtrudniejszą rzeczą do przetestowania któregokolwiek z nich jest możliwość złapania ludzi z połączeniami mieszkalnymi w różnych częściach globu, aby przeprowadzili dla Ciebie testy, ponieważ wykonywanie testów z połączeń klasy centrum danych nic nie znaczy, jeśli chodzi o wydajność w świecie rzeczywistym ; Wykonanie testów zatrudniających ludzi za niewielką kwotę przyniesie wspaniałe rezultaty, ponieważ jeśli już patrzysz na CDN, prawdopodobnie zapłacisz sporo pieniędzy i prawdopodobnie podpisz umowę, więc wydasz 100 USD lub więc wykonanie odpowiednich testów porównawczych pozwoli ci odpocząć dzięki podpisanej właśnie 12-miesięcznej umowie.

gekkz
źródło
2

Chciałbym mieć historię do opowiedzenia. Wielokrotnie korzystaliśmy z tego z mocy, które się powtarzają, ale odpowiedź zawsze powraca tak samo: „chcemy tego w domu”.

Mamy użytkowników, którzy uzyskują dostęp do witryny za pośrednictwem protokołu SSL. Przyjrzeliśmy się użyciu Google CDN do podstawowych rzeczy, takich jak biblioteki JavaScript. Spowodowało to irytujące mieszane ostrzeżenia bezpieczeństwa w przeglądarkach, więc je upuściliśmy.

Mamy również pewne problemy z bezpieczeństwem związane z blokowaniem użytkownikom i ogółowi społeczeństwa dostępu do treści w CDN. Pomyśl o ochronie zdjęcia na Facebooku w oparciu o login + możliwość zobaczenia albumu ze zdjęciami użytkowników. Byłby to kompleks czeku.

Jak dotąd nie wiem, jak to zrobić. Zakładam, że moglibyśmy wdrożyć schemat plików cookie / tokenów lub usługę internetową, której CDN mógłby użyć do zweryfikowania dostępu, ale zwiększyłoby to opóźnienie, które staramy się wyeliminować.

Byłbym także zainteresowany usłyszeniem, jak inni przezwyciężyli te problemy, jeśli w rzeczywistości są to wasze problemy.

Gareth Farrington
źródło
Ja również chciałbym usłyszeć dodatkowe przemyślenia na temat Google CDN i SSL. Nie zaszedłem jeszcze tak daleko i jeszcze nie przyszło mi do głowy, że nurkowanie byłoby problematyczne.
Webjedi
Za pomocą bibliotek JavaScript Google można uzyskiwać dostęp do adresów URL za pomocą HTTPS, a także HTTP.
Metalshark,