Czy CDN nadal działa, nawet gdy mój serwer jest wyłączony?


10

Jestem właścicielem strony internetowej planującym używać platformy Amazon S3 w chmurze. Czytałem wszystkie rzeczy o tym, co może zrobić CDN, ale wciąż mam pytanie bez odpowiedzi.

Czy CDN nadal działa, nawet gdy mój główny serwer jest wyłączony. To jest główny powód, dla którego jestem tym zainteresowany. Ponieważ mój serwer zwykle doświadcza częstych awarii z powodu awarii zasilania w Mali.


3
Możesz rozważyć CloudFlare, który jest a) darmowy i b) może utrzymać statyczne strony podczas awarii.
ceejayoz,

Odpowiedzi:


12

Zależy to od tego, kto hostuje Twój CDN. Jeśli hostujesz swoją witrynę na jednym serwerze, a CDN z firmą zewnętrzną, prawdopodobnie Twoja CDN pozostanie aktywna, gdy witryna przestanie działać. Może się tak nie zdarzyć, ponieważ niektóre sieci CDN rozpowszechniają tylko te treści, które mogą zweryfikować na Twojej stronie internetowej.

Uwaga dodatkowa: sieci CDN nie służą do hostowania całej witryny. Więc jeśli myślisz, że możesz użyć jednego z nich, aby zastąpić swój hosting lub użyć go jako pewnego rodzaju planu przełączania awaryjnego, szczekasz na złe drzewo.

TL; DR - Musisz zapytać swojego dostawcę CDN.


10

Sieci CDN są zaprojektowane pod kątem skalowalności i wydajności, ale nie wysokiej dostępności. W dowolnym momencie mogą wymagać dostępu do oryginalnych plików.

Większość ludzi używa ich do przechowywania plików statycznych, takich jak obrazy, css i pliki javascript. Niektóre można skonfigurować do buforowania HTML, ale dzieje się tak tylko wtedy, gdy witryna jest całkowicie statyczna. Gdyby tak było, można by wszystko hostować na S3 i wcale nie potrzebowałby serwera.


5

Ogólnie tak, aż do TTL.

Korzystając z sieci CDN, zwykle konfigurujesz czas TTL (czas do publikacji) dla swoich treści. Jest to maksymalna liczba lat, jaką może mieć pamięć podręczna, zanim zdecyduje, że absolutnie musi ją odświeżyć najnowszą zawartością. Załóżmy na przykład, że skonfigurujesz wszystkie adresy URL * .jpg, aby mieć 5-minutowy czas TTL.

Jeśli serwer przestanie działać, masz dodatkowe 5 minut na jego przywrócenie, zanim użytkownicy zauważą. Cóż, przynajmniej dla plików .jpg. Cóż, przynajmniej dla plików .jpg, które wcześniej zostały wcześniej zbuforowane.

Ponadto niektóre sieci CDN korzystają z funkcji takich jak Akamai NetStorage, w których można przesyłać treści bezpośrednio do sieci CDN - CDN otrzymuje pewne treści i poleca im przekazywanie ich bezpośrednio z góry. Ponieważ nigdy nie dzieje się tutaj buforowanie w stylu „na żądanie” typu „pull”, powinno to oczywiście działać, gdy serwer jest wyłączony.

Jak zauważyli inni plakaty, nie do tego służą CDN i NIE dają gwarancji, że to zachowanie zadziała. Zdarza się, że zwykle działa (i jest niesamowity, gdy go oglądasz!). Oczywiście w celu uzyskania szczegółowych informacji technicznych należy skontaktować się z dostawcą.


5

Tak: serwery CDN będą nadal działać, nawet gdy witryna nie działa, co jest dobrym rozwiązaniem w przypadku poważnych awarii. Masz całkowitą kontrolę nad tym, co się dzieje, dzięki czemu możesz dostosować doświadczenie w oparciu o zasoby i priorytety. Opcje ogólnie dzielą się na następujące kategorie:

  1. Obiekty skonfigurowane do buforowania (najczęściej przez ustawienie Cache-Controlnagłówka) powinny być dostępne do momentu wygaśnięcia. Niektóre sieci CDN oferują serwerom brzegowym CDN możliwość pobierania zawartości z innych serwerów CDN, co może pomóc w przypadku awarii, a także ogólnie poprawić wydajność, gdy serwery początkowe mają stosunkowo duże opóźnienia w stosunku do serwerów CDN.

  2. Niektóre sieci CDN oferują możliwość udostępniania treści, które wygasły, gdy twój serwer zaplecza jest niedostępny (np. W Fastly możesz włączyć tryb łaski lub świętego Varnisha). Oczywiście nie pomoże to w przypadku treści, które nigdy nie były buforowane, ale w wielu przypadkach może przynajmniej utrzymać główną stronę główną, informacje kontaktowe itp. Online podczas pracy nad przywróceniem serwerów do trybu online.

  3. Większość sieci CDN oferuje możliwość wypróbowania wielu serwerów zaplecza, dzięki czemu można mieć osobną witrynę przełączania awaryjnego, która ma sens w przypadku witryny: przełączanie awaryjne na inny serwer lub witrynę o ograniczonej funkcjonalności, statyczna strona HTML itp. Może to być przydatne w przypadku katastrofy awarie hostingu, ponieważ masz opcję hostingu w zupełnie innej firmie lub, w przypadku czegoś takiego jak Akamai NetStorage, bezpośrednio z dostawcą CDN, aby obsłużyć pełny stos.

Z wyjątkiem trzeciej opcji, nie masz kontroli nad tym, co będzie buforowane na serwerach CDN, więc najważniejszą częścią tego procesu jest decyzja, w jaki sposób Twoja witryna może ulec degradacji, jeśli różne funkcje nie są dostępne: na przykład, jeśli masz rozsądna treść HTML, nawet gdy JavaScript całkowicie zawiedzie, witryna oparta głównie na informacjach może działać tylko z podstawową zawartością strony, nawet gdy bardziej zaawansowane funkcje cicho zawodzą w tle.


Świetne podsumowanie! Akamai ma Serve stale if unable to validateopcję, dzięki której, gdy pochodzenie jest obniżone, będzie wyświetlać treści nawet TTL.
LeOn - Han Li

@Leonli drugi punkt prawdopodobnie również mógłby użyć linku do RFC 5861, ponieważ uważam, że CloudFlare również obsługuje Cache-Control: stale-if-errorteraz.
Chris Adams,

2

Większość sieci CDN buforuje (dynamicznie) zawartość przez pewien czas (TTL) od źródła, w tym przypadku na serwerze. W Amazon Cloudfront Management Console wyjaśniono sterowanie pamięcią podręczną segmentu S3.

  1. Domyślne zachowanie Amazon S3 polega na buforowaniu obiektu przez 24 godziny.

  2. Możesz wpłynąć na zachowanie domyślne, dostarczając / zapisując nagłówek Cache-Control na serwerze źródłowym lub nagłówek Expires.

    • Gdy używasz nagłówka Max-Age Cache-Control, minimalna wartość wynosi 0. W tym momencie Amazon będzie zadowolić serwer pochodzenia, aby za każdym razem sprawdzać, czy obiekt się zmienił.

    • Gdy użyjesz nagłówka Wygasa dla obiektu, Amazon nie skontaktuje się z serwerem pochodzenia do tej daty.

Mam nadzieję, że to wyjaśnia zachowanie Amazon.


0

Przez ponad rok byłem inżynierem wsparcia w CDN i powiem, że wszystkie odpowiedzi tutaj są świetne, ale IMO @ Chris-Adams ma najlepszą odpowiedź (gdybym mógł ją głosować, zrobiłbym to).

Jedną z rzeczy, które robią nasi klienci, jest wskazywanie www na CDN i 301 TLD na www. Jeśli obiekty TTL wygasną, krawędź będzie obsługiwać wygasłą zawartość, jeśli jest dostępna w pamięci podręcznej.

To powiedziawszy, jeśli czas dostępności (i świeża zawartość) jest dla ciebie ważny, rozważę przeniesienie twojego pochodzenia (ból w tyłku, który znam) do hosta, który nie doświadcza częstych przerw w dostawie prądu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.