Har du någonsin känt dig frustrerad av en långsiktig laddningstid på en webbsida, eller har varit oroad över sin säkerhet (eller brist på det)? Google utvecklar något just nu som borde lösa några av dessa problem. Det heter SPDY, och det kommer att fungera i kombination med HTTP för att göra Internet mycket snabbare.
Först, vad är HTTP?
Kort för HyperText Transfer Protocol, HTTP fungerar som det underliggande protokollet för Internet. Det är ett protokoll på applikationsnivå, en uppsättning regler som definierar hur två enheter kommunicerar och delar data med varandra. Tyvärr, på grund av hur det utformades är webbsidens latitud eller långsamma laddningstider ett betydande problem som HTTP stöter på. Självklart, om du använder HTTPS HTTPS överallt: Använd HTTPS istället för HTTP när det är möjligt HTTPS överallt: Använd HTTPS istället för HTTP när det går att läsa mer. Det kan vara mindre av ett problem.
HTTP uppmanade ursprungligen att kommunikation till servern stängs efter varje förfrågan / svarcykel, där en enhet skickar en begäran om data till en annan enhet och tar emot den data från den andra enheten. Detta resulterade i att hela TCP-kanalen kompletterades och avbröts för varje förfrågan, vilket var dyrt med avseende på bandbredd och medför stor onödig belastning på datorer och servrar. TCP, som HTTP, är ett webbprotokoll som specifikt tillhandahåller garanterad leverans, dubbla undertryckningar, leverans i beställning, flödesstyrning, överbelastning och andra transportfunktioner.
Ett annat problem med det var att det innehöll FIFO-semantik. FIFO, eller "First In, First Out" semantiken dikterar i huvudsak att den första förfrågan att komma in på servern kommer att ha det första svaret. Men detta kan vara ett problem. När det finns en långsam förfrågan längst fram i kön, kommer efterfrågorna bakom det att vänta längre och det finns ett backflöde av förfrågningar.
Sedan kom HTTP 1.1 med några stora förändringar som syftade till att lösa problemet. För en tillåts HTTP 1.1 för nya typer av TCP-anslutningar som gjorde det möjligt för kanalerna att vara öppna mellan begäran / svarcykler. Dessa kallades "hålla levande" anslutningar. HTTP 1.1 har också tillåtelse för något som kallas pipelining, vilket lovade att bli av med ett-till-ett-system för att hantera förfrågningar. Uppehället levande förbindelser antogs allmänt, medan pipelining endast användes av Opera, som är känt för att använda mer innovativ teknik. 5 Ideologiska skäl till varför du bör försöka Opera 5 Ideologiska skäl till varför du ska försöka Opera Inte många har försökt Opera eller ens hörde mycket om Opera eftersom webbläsaren alltid har tittat så långt bort som Internet Explorer, sedan Firefox och nu tar Google Chrome ... Läs mer i sin webbläsare.
Vad om SPDY?
Eftersom pipelining inte var allmänt antagen, var det fortfarande en fråga om webbsidolaglighet. Sedan 2009 meddelade Google att det hade börjat arbeta med att utveckla SPDY med målet att det skulle bidra till att påskynda Internet.
SPDY är ett öppet nätverksprotokoll avsedd att användas förutom HTTP för att transportera webbdata. Att vara ett öppet nätverksprotokoll fastställer regler för hur data delas över nätverk.
Det fungerar genom att manipulera HTTP-trafiken för att minska på webbsidans latentitet. Det gör detta genom att tilldela en specifik identifierare som heter ett ström-ID för varje förfrågan. Därifrån kan den kringgå HTTP: s FIFO-system med bara en TCP-kanal. Flera förfrågningar kan svaras samtidigt, frigöra köer och skära långsamma laddningstider. Men ingenting kommer att gå förlorat eller förstört tack vare det ström-ID.
SPDY minskar också laddningstiden för webbsidan genom att komprimera rubrikerna som följer med förfrågningar. Uncompressed, eftersom de kommer genom HTTP, kan de variera i storlek från cirka 200 byte till långt över 2 KB. Det är inte ovanligt att begäranhuvuden är lika stora som 700 kB, antingen. När dessa kommer in i servern, okomprimerad, äter de upp bandbredd och latensen kan ta sin vägtull på en anslutning.
Överflödiga rubriker tas också bort under förfrågningar. Efter att en rubrik har upprättats en gång behöver den inte skickas om och om igen, och det är inte tack vare SPDY.
SPDY kräver SSL för säkerhet, vilket gör den mycket säkrare än HTTP. Inte bara det, det har visat sig i huvud-till-huvud-test vara 64% snabbare än HTTP, även om efterföljande tester som drivs av några lag har visat att det här verkligen inte gör för mycket av en skillnad, eftersom webbplatser har mycket annorlunda källa material att det fortfarande skulle vara lite latens i bruk.
Ändå stöds SPDY från och med november 2014 av 2, 3% av alla webbplatser, inklusive Twitter och många av Googles tjänster.
Hur kan jag använda den?
Om du använder Google-tjänster eller Twitter använder du redan SPDY. Men eftersom endast några webbplatser stöder SPDY, är risken att du inte kommer att använda den mer än HTTP eller HTTPS under lång tid.
För användare med webbservrar kan du vanligtvis implementera SPDY utan att behöva ändra något webbinnehåll. För Apache-användare Så här konfigurerar du en Apache-webbserver i tre enkla steg Så här ställer du upp en Apache-webbserver i tre enkla steg Oavsett orsaken kan du vid något tillfälle få en webbserver att gå. Oavsett om du vill ge dig fjärråtkomst till vissa sidor eller tjänster, vill du få ett samhälle ... Läs mer, det finns en SPDY-förlängning som kan installeras kallad mod_SPDY. Om du använder Nginx kan du använda SPDY-patchen. Medan mod_SPDY och SPDY-patchen för Nginx är helt nya och förmodligen förvirrande är de inte otroligt svåra att installera. Dock behöver du fortfarande ett SSL-certifikat. Denna artikel av Mohan Ramkumar kommer att visa dig hur du får ditt eget SSL-certifikat Hur du får ditt mycket eget gratis SSL-certifikat Hur du får ditt mycket eget gratis SSL-certifikat Läs mer, gratis.
Om du är i en webbläsare och nyfiken på vilka webbplatser som stöder SPDY finns det tillgängliga appar och tillägg som visar om det är aktiverat eller inte, till exempel SPDY-indikator som är tillgänglig för Chrome och Mozilla Firefox. Den visar en liten grön blixtikon om den är aktiverad för en viss webbplats och en valfri grå ikon om den inte är aktiverad.
Slutsats
Fastän SPDY kanske inte är snabbare än HTTP i verkligheten, kommer den att komma dit och stöds redan av flera webbläsare, inklusive Chrome / Chromium, Mozilla Firefox, Opera, Amazon Silk och Safari. Medan du kan stödja SPDY på din egen server kan det vara lite komplicerat först, du bana väg för ett nytt världsomspännande webben.
Har du någon erfarenhet av SPDY? Lämna en kommentar nedan och vi chattar!
Bildkredit: Serverrum via Flickr, Unplugged via Flickr, SPDY Aktiverad på Firefox 12.0 via Flickr