Przyspieszanie witryn dynamicznych za pośrednictwem usługi Azure Content Delivery Network
Dzięki eksplozji mediów społecznościowych, handlu elektronicznego i hiperspersonalizowanej sieci Web szybko rośnie odsetek treści obsługiwanych dla użytkowników końcowych jest generowany w czasie rzeczywistym. Użytkownicy oczekują szybkiego, niezawodnego i spersonalizowanego środowiska internetowego niezależnie od przeglądarki, lokalizacji, urządzenia lub sieci. Jednak bardzo innowacje, które sprawiają, że te środowiska tak angażujące również powolne pobieranie stron i narażają jakość środowiska konsumenckiego na ryzyko.
Standardowa funkcja sieci dostarczania zawartości obejmuje możliwość buforowania plików bliżej użytkowników końcowych w celu przyspieszenia dostarczania plików statycznych. Jednak w przypadku dynamicznych aplikacji internetowych buforowanie tej zawartości w lokalizacjach brzegowych nie jest możliwe, ponieważ serwer generuje zawartość w odpowiedzi na zachowanie użytkownika. Przyspieszenie dostarczania takiej zawartości jest bardziej złożone niż tradycyjne buforowanie krawędzi i wymaga kompleksowego rozwiązania, które precyzyjnie dostosuje każdy element wzdłuż całej ścieżki danych od powstania do dostarczenia. Dzięki optymalizacji dynamicznego przyspieszania witryn usługi Azure Content Delivery Network (DSA) wydajność stron internetowych z zawartością dynamiczną jest znacznie większa.
Usługa Azure CDN firmy Edgio oferuje optymalizację DSA za pośrednictwem menu Zoptymalizowane pod kątem podczas tworzenia punktu końcowego. Przyspieszanie witryn dynamicznych firmy Microsoft jest oferowane za pośrednictwem usługi Azure Front Door.
Ważne
W przypadku profilów usługi Azure CDN from Edgio nie można zmienić optymalizacji punktu końcowego sieci dostarczania zawartości po jej utworzeniu.
Konfiguracja punktu końcowego sieci dostarczania zawartości w celu przyspieszenia dostarczania plików dynamicznych
Aby skonfigurować punkt końcowy sieci dostarczania zawartości w celu zoptymalizowania dostarczania plików dynamicznych, możesz użyć witryny Azure Portal, interfejsów API REST lub dowolnego zestawu SDK klienta, aby wykonać to samo programowo.
Aby skonfigurować punkt końcowy usługi CDN na potrzeby optymalizacji DSA przy użyciu witryny Azure Portal:
Na stronie profilu usługi CDN wybierz pozycję Punkt końcowy.
Zostanie wyświetlone okienko Dodawanie punktu końcowego.
W obszarze Zoptymalizowane pod kątem wybierz pozycję Przyspieszanie lokacji dynamicznej.
W polu Ścieżka sondy wprowadź prawidłową ścieżkę do pliku.
Ścieżka sondy jest funkcją specyficzną dla dsa, a prawidłowa ścieżka jest wymagana do utworzenia. DsA używa małego pliku ścieżki sondy umieszczonego na serwerze pochodzenia, aby zoptymalizować konfiguracje routingu sieciowego dla sieci dostarczania zawartości. W przypadku pliku ścieżki sondy możesz pobrać i przekazać przykładowy plik do witryny lub użyć istniejącego zasobu w lokalizacji początkowej o rozmiarze około 10 KB.
Wprowadź inne wymagane opcje punktu końcowego (aby uzyskać więcej informacji, zobacz Tworzenie nowego punktu końcowego sieci dostarczania zawartości), a następnie wybierz pozycję Dodaj.
Po utworzeniu punktu końcowego sieci dostarczania zawartości stosuje optymalizacje DSA dla wszystkich plików spełniających określone kryteria.
Optymalizacja DSA przy użyciu usługi Azure Content Delivery Network
Przyspieszanie witryn dynamicznych w usłudze Azure Content Delivery Network przyspiesza dostarczanie dynamicznych zasobów przy użyciu następujących technik:
Optymalizacja tras
Optymalizacja tras jest ważna, ponieważ Internet jest dynamicznym miejscem, w którym ruch i tymczasowe awarie stale zmieniają topologię sieci. Protokół BGP (Border Gateway Protocol) to protokół routingu Internetu, ale mogą istnieć szybsze trasy za pośrednictwem serwerów punktów obecności (POP).
Optymalizacja tras wybiera najbardziej optymalną ścieżkę do źródła, dzięki czemu witryna jest stale dostępna, a zawartość dynamiczna jest dostarczana użytkownikom końcowym za pośrednictwem najszybszej i najbardziej niezawodnej trasy.
Sieć Edgio używa kombinacji anycast DNS, wysokiej wydajności obsługi punktów poPs i kontroli kondycji, aby określić najlepsze bramy do najlepszego kierowania danych z klienta do źródła.
W rezultacie w pełni dynamiczna i transakcyjna zawartość jest dostarczana szybciej i bardziej niezawodnie dla użytkowników końcowych, nawet jeśli nie można jej buforować.
Optymalizacje PROTOKOŁU TCP
Transmission Control Protocol (TCP) to standard pakietu protokołu internetowego używany do dostarczania informacji między aplikacjami w sieci IP. Domyślnie utworzenie połączenia TCP wymaga wielu żądań dwukierunkowych. Ponadto istnieją ograniczenia, aby zapobiec przeciążeniu sieci, co może prowadzić do nieefektywności podczas działania na dużą skalę. Usługa Azure CDN z usługi Edgio obsługuje ten problem, optymalizując w trzech obszarach:
Eliminowanie powolnego uruchamiania protokołu TCP
Powolny start TCP to algorytm protokołu TCP, który uniemożliwia przeciążenie sieci przez ograniczenie ilości danych wysyłanych przez sieć. Zaczyna się od małych rozmiarów okien przeciążenia między nadawcą a odbiornikiem do momentu wykrycia maksymalnej lub utraty pakietów.
Usługa Azure CDN z profilów Edgio eliminuje powolny początek protokołu TCP, wykonując następujące trzy kroki:
Monitorowanie kondycji i przepustowości służy do mierzenia przepustowości połączeń między serwerami pop brzegowych.
Metryki są współużytkowane między serwerami POP brzegowych, dzięki czemu każdy serwer jest świadomy warunków sieciowych i kondycji serwera pozostałych pops wokół nich.
Serwery brzegowe sieci dostarczania zawartości zakładają pewne parametry transmisji, takie jak optymalny rozmiar okna podczas komunikacji z innymi serwerami brzegowymi sieci dostarczania zawartości w pobliżu. Ten krok oznacza, że początkowy rozmiar okna przeciążenia można zwiększyć, jeśli kondycja połączenia między serwerami brzegowymi sieci dostarczania zawartości może mieć większe transfery danych pakietów.
Używanie połączeń trwałych
W przypadku korzystania z sieci dostarczania zawartości mniej unikatowych maszyn łączy się bezpośrednio z serwerem pochodzenia w porównaniu z użytkownikami nawiązującymi bezpośrednie połączenie ze źródłem. Usługa Azure Content Delivery Network udostępnia również żądania użytkowników w celu ustanowienia mniejszej liczby połączeń ze źródłem.
Jak wspomniano wcześniej, do nawiązania połączenia TCP wymagane jest kilka żądań uzgadniania. Połączenia trwałe, które są implementowane przez Keep-Alive
nagłówek HTTP, ponownie użyj istniejących połączeń TCP dla wielu żądań HTTP, aby zaoszczędzić czasy rundy i przyspieszyć dostarczanie.
Usługa Azure CDN z usługi Edgio wysyła również okresowe pakiety o zachowaniu aktywności za pośrednictwem połączenia TCP, aby zapobiec zamknięciu otwartego połączenia.
Buforowanie
W przypadku rozszerzenia DSA buforowanie jest domyślnie wyłączone w sieci dostarczania zawartości, nawet jeśli źródło zawiera Cache-Control
lub Expires
nagłówki w odpowiedzi. DsA jest zwykle używana w przypadku zasobów dynamicznych, które nie powinny być buforowane, ponieważ są one unikatowe dla każdego klienta. Buforowanie może przerwać to zachowanie.
Jeśli masz witrynę internetową z mieszanką zasobów statycznych i dynamicznych, najlepszym rozwiązaniem jest użycie hybrydowego podejścia w celu uzyskania najlepszej wydajności.
Dzięki profilom usługi Azure CDN Standard from Edgio można włączyć buforowanie dla określonych punktów końcowych DSA przy użyciu reguł buforowania.
Aby uzyskać dostęp do reguł buforowania:
Na stronie profilu CDN w obszarze ustawienia wybierz pozycję Buforowanie reguły.
Zostanie otwarta strona reguły Buforowanie.
Utwórz globalną lub niestandardową regułę buforowania, aby włączyć buforowanie dla punktu końcowego DSA.
W przypadku profilów usługi Azure CDN Premium tylko z profilów Edgio można włączyć buforowanie dla określonych punktów końcowych DSA przy użyciu aparatu reguł. Wszystkie utworzone reguły mają wpływ tylko na te punkty końcowe twojego profilu, które są zoptymalizowane pod kątem dsa.
Aby uzyskać dostęp do aparatu reguł:
Na stronie profilu usługi CDN wybierz pozycję Zarządzaj.
Zostanie otwarty portal zarządzania siecią dostarczania zawartości.
W portalu zarządzania siecią dostarczania zawartości wybierz pozycję ADN, a następnie wybierz pozycję Aparat reguł.
Alternatywnie można użyć dwóch punktów końcowych sieci dostarczania zawartości: jednego punktu końcowego zoptymalizowanego pod kątem dsa w celu dostarczania dynamicznych zasobów i innego punktu końcowego zoptymalizowanego pod kątem typu optymalizacji statycznej, takiego jak ogólne dostarczanie internetowe, do dostarczania zasobów z możliwością buforowania. Zmodyfikuj adresy URL stron internetowych, aby połączyć się bezpośrednio z zasobem w punkcie końcowym sieci dostarczania zawartości, który ma być używany.
Na przykład mydynamic.azureedge.net/index.html
jest stroną dynamiczną i jest ładowana z punktu końcowego DSA. Strona HTML odwołuje się do wielu statycznych zasobów, takich jak biblioteki JavaScript lub obrazy ładowane z punktu końcowego sieci dostarczania zawartości statycznej, takich jak mystatic.azureedge.net/banner.jpg
i mystatic.azureedge.net/scripts.js
.