Dynamisk webbplatsacceleration via Azure Content Delivery Network

Med explosionen av sociala medier, elektronisk handel och den hyperanpassade webben genereras en snabbt ökande andel av innehållet som betjänas slutanvändarna i realtid. Användarna förväntar sig en snabb, tillförlitlig och personlig webbupplevelse, oberoende av webbläsare, plats, enhet eller nätverk. Men just de innovationer som gör dessa upplevelser så engagerande också långsamma sidnedladdningar och sätter kvaliteten på konsumentupplevelsen i fara.

Standardfunktioner för innehållsleveransnätverk omfattar möjligheten att cachelagrat filer närmare slutanvändarna för att påskynda leveransen av statiska filer. Men med dynamiska webbprogram går det inte att cachelagra innehållet på gränsplatser eftersom servern genererar innehållet som svar på användarbeteendet. Att påskynda leveransen av sådant innehåll är mer komplext än traditionell gränscachelagring och kräver en lösning från slutpunkt till slutpunkt som finjusterar varje element på hela datavägen från start till leverans. Med DSA-optimering (Dynamic Site Acceleration) i Azure Content Delivery Network förbättras prestandan för webbsidor med dynamiskt innehåll på ett mätbart sätt.

Azure CDN från Edgio erbjuder DSA-optimering via menyn Optimerad för när slutpunkten skapas. Dynamisk webbplatsacceleration från Microsoft erbjuds via Azure Front Door.

Viktigt!

För Azure CDN från Edgio-profiler kan du inte ändra optimeringen av en nätverksslutpunkt för innehållsleverans när den har skapats.

Nätverksslutpunktskonfiguration för innehållsleverans för att påskynda leveransen av dynamiska filer

Om du vill konfigurera en nätverksslutpunkt för innehållsleverans för att optimera leveransen av dynamiska filer kan du antingen använda Azure-portalen, REST-API:erna eller någon av klient-SDK:erna för att göra samma sak programmatiskt.

Så här konfigurerar du en CDN-slutpunkt för DSA-optimering med hjälp av Azure-portalen:

  1. På CDN-profilsidan väljer du Slutpunkt.

    Skärmbild av att lägga till en ny nätverksslutpunkt för innehållsleverans.

    Fönstret Lägg till slutpunkt visas.

  2. Under Optimerad för väljer du Dynamisk webbplatsacceleration.

    Skärmbild av att skapa en ny nätverksslutpunkt för innehållsleverans med DSA.

  3. För Sökväg för avsökning anger du en giltig sökväg till en fil.

    Avsökningssökvägen är en funktion som är specifik för DSA och en giltig sökväg krävs för att skapa. DSA använder en liten sökvägsfil för avsökning som placeras på ursprungsservern för att optimera nätverksroutningskonfigurationer för innehållsleveransnätverket. För sökvägsfilen för avsökningen kan du ladda ned och ladda upp exempelfilen till din webbplats, eller använda en befintlig tillgång på ditt ursprung som är cirka 10 kB stort.

  4. Ange de andra nödvändiga slutpunktsalternativen (mer information finns i Skapa en ny nätverksslutpunkt för innehållsleverans) och välj sedan Lägg till.

    När nätverksslutpunkten för innehållsleverans har skapats tillämpas DSA-optimeringarna för alla filer som matchar vissa kriterier.

DSA-optimering med Azure Content Delivery Network

Dynamisk webbplatsacceleration i Azure Content Delivery Network påskyndar leveransen av dynamiska tillgångar med hjälp av följande tekniker:

Routningsoptimering

Routningsoptimering är viktigt eftersom Internet är en dynamisk plats, där trafik och tillfälligt avbrott ständigt ändrar nätverkstopologin. BGP (Border Gateway Protocol) är routningsprotokollet för Internet, men det kan finnas snabbare vägar via pop-servrar (intermediär point of presence).

Routningsoptimering väljer den mest optimala vägen till ursprunget så att en webbplats är kontinuerligt tillgänglig och dynamiskt innehåll levereras till slutanvändare via den snabbaste och mest tillförlitliga vägen som möjligt.

Edgio-nätverket använder en kombination av Anycast DNS, poPs med hög kapacitet och hälsokontroller för att fastställa de bästa gatewayerna för att dirigera data från klienten till ursprunget.

Därför levereras fullständigt dynamiskt och transaktionsbaserat innehåll snabbare och mer tillförlitligt till slutanvändarna, även om det inte går att cachelagrat.

TCP-optimeringar

Transmission Control Protocol (TCP) är standarden för Internet Protocol-sviten som används för att leverera information mellan program i ett IP-nätverk. Som standard kräver etableringen av en TCP-anslutning flera dubbelriktade begäranden. Dessutom finns det gränser för att förhindra nätverksbelastning, vilket kan leda till ineffektivitet vid drift i stor skala. Azure CDN från Edgio hanterar det här problemet genom att optimera på tre områden:

Eliminera långsam TCP-start

Långsam TCP-start är en algoritm i TCP-protokollet som förhindrar nätverksbelastning genom att begränsa mängden data som skickas via nätverket. Det börjar med små storlekar på överbelastningsfönster mellan avsändare och mottagare tills det maximala antalet har nåtts eller paketförlusten har identifierats.

Azure CDN från Edgio-profiler eliminerar långsam TCP-start med följande tre steg:

  1. Hälso- och bandbreddsövervakning används för att mäta bandbredden för anslutningar mellan gräns-POP-servrar.

  2. Mått delas mellan gräns-POP-servrar så att varje server är medveten om nätverksvillkoren och serverhälsan för de andra IP-adresserna runt dem.

  3. Nätverksgränsservrarna för innehållsleverans gör antaganden om vissa överföringsparametrar, till exempel vad den optimala fönsterstorleken ska vara när du kommunicerar med andra nätverksgränsservrar för innehållsleverans i dess närhet. Det här steget innebär att den första storleken på överbelastningsfönstret kan ökas om hälsotillståndet för anslutningen mellan nätverksgränsservrarna för innehållsleverans kan överföras med högre paketdata.

Använda beständiga anslutningar

När du använder ett nätverk för innehållsleverans ansluter färre unika datorer direkt till ursprungsservern jämfört med användare som ansluter direkt till ditt ursprung. Azure Content Delivery Network poolar även användarbegäranden tillsammans för att upprätta färre anslutningar med ursprunget.

Som tidigare nämnts krävs flera handskakningsbegäranden för att upprätta en TCP-anslutning. Beständiga anslutningar, som implementeras av Keep-Alive HTTP-huvudet, återanvänder befintliga TCP-anslutningar för flera HTTP-begäranden för att spara tur- och returtider och påskynda leveransen.

Azure CDN från Edgio skickar också periodiska keep-alive-paket över TCP-anslutningen för att förhindra att en öppen anslutning stängs.

Cachelagring

Med DSA inaktiveras cachelagring som standard i nätverket för innehållsleverans, även när ursprunget innehåller Cache-Control eller Expires rubriker i svaret. DSA används vanligtvis för dynamiska tillgångar som inte ska cachelagras eftersom de är unika för varje klient. Cachelagring kan bryta det här beteendet.

Om du har en webbplats med en blandning av statiska och dynamiska tillgångar är det bäst att använda en hybridmetod för att få bästa möjliga prestanda.

Med Azure CDN Standard från Edgio-profiler kan du aktivera cachelagring för specifika DSA-slutpunkter med hjälp av cachelagringsregler.

Så här kommer du åt cachelagringsregler:

  1. Välj Cachelagring regler under inställningar på cdn-profilsidan.

    Skärmbild av knappen för nätverkscachelagringsregler för innehållsleverans.

    Sidan Cachelagring regler öppnas.

  2. Skapa en global eller anpassad cachelagringsregel för att aktivera cachelagring för din DSA-slutpunkt.

Endast för Azure CDN Premium från Edgio-profiler aktiverar du cachelagring för specifika DSA-slutpunkter med hjälp av regelmotorn. Alla regler som skapas påverkar endast de slutpunkter i din profil som är optimerade för DSA.

Så här kommer du åt regelmotorn:

  1. På sidan CDN-profil väljer du Hantera.

    Skärmbild av knappen Hantera nätverksprofil för innehållsleverans.

    Nätverkshanteringsportalen för innehållsleverans öppnas.

  2. I nätverkshanteringsportalen för innehållsleverans väljer du ADN och sedan Regelmotor.

    Regelmotor för DSA

Du kan också använda två nätverksslutpunkter för innehållsleverans: en slutpunkt optimerad med DSA för att leverera dynamiska tillgångar och en annan slutpunkt som är optimerad med en statisk optimeringstyp, till exempel allmän webbleverans, för att leverera cachebara tillgångar. Ändra url:er för webbsidan för att länka direkt till tillgången på den innehållsleveransnätverksslutpunkt som du planerar att använda.

Till exempel mydynamic.azureedge.net/index.html är en dynamisk sida och läses in från DSA-slutpunkten. HTML-sidan refererar till flera statiska tillgångar, till exempel JavaScript-bibliotek eller bilder som läses in från nätverksslutpunkten för statisk innehållsleverans, till exempel mystatic.azureedge.net/banner.jpg och mystatic.azureedge.net/scripts.js.