Hogyan lehet felgyorsítani a rakodási hely 35 javaslatai rész # 1
A listát a 35 technikák, kombinált 7 csoporttal helyettesített. Eredeti cikk - «Best Practices, amelyek felgyorsítják a Web Site».
1. HTTP-kérések minimalizálása
80% válaszidő a végfelhasználó töltött a külső felület (front-end). A legtöbb ezúttal kapcsolódik a betöltés minden eleme egy internetes oldalon. Képek, stíluslapok, scriptek, Flash, stb Ezek közül a kisebbik alkatrészek, annál kisebb a HTTP-kérések létrehozásához szükséges az oldalt. Ez a kulcs létrehozása gyorsan oldalakon.
Az egyik lehetőség, hogy csökkentsék az alkatrészek számát egy internetes oldalon -, hogy egyszerűsítse a design. De lehetséges, hogy a létrehozott oldalakat, változatos és gazdag tartalom, és ugyanabban az időben egy kis válaszidő? Íme néhány módszer, hogy csökkentsék a számát HTTP-kérések, mentse el az oldalt design.
A fájlok összevonásával, akkor számának csökkentése HTTP-kérések egyesítésével szkripteket egytől egyig stíluslapok - egy stíluslap. Fájlösszefűzési egyre nagyobb kihívássá válik, ha a szkriptek és stíluslapok változnak oldalról oldalra, de tartalmazza azt a kiadás, akkor javulni fog a válaszidő.
CSS-sprite előnyös, hogy csökkentse a képek számát. Keverjük össze a háttérképeket az egyik, és a CSS tulajdonságokat, mint a háttér-kép és a háttér-helyzetben, hogy megjelenjen a kívánt területet.
Képtérképekkel egyesítsen kép egy. A teljes mérete közel azonos, de gyorsabb oldalak betöltése miatt kisebb számú HTTP-kéréseket. Képtérképek csak abban az esetben, ha a kapcsolódó képeket, például a navigációs sáv. Koordinátáinak meghatározására a kártya igényel sok időt és figyelmet. Navigációs térkép képek, kényelmetlen és ezért nem javasolt.
Kezdje számának csökkentése HTTP-kérések az oldalon. Ez egy nagyon fontos ajánlást, hogy javítsa az oldal teljesítményét új látogatók. Amint az a blog Tenni Theurer böngésző gyorsítótár használat - Exposed. 40-60% -a napi látogatók a honlapon jön egy üres cache. Gyors betöltés oldalát az első látogatás javítja a felhasználói élményt a webhelyen.
A rendszernek van egy főállású funkcióját ötvözi és a tömörítés CSS- és JS-fájlt, amely tartalmazza a fő modul beállításait. Ha ez az opció engedélyezve van az ideális eset az oldalon csatlakozik 3 CSS és JS-3 fájlt.
További anyag a témában:
2. Használjon Content Delivery Network (CDN - Content Delivery Network)
A távolság és a felhasználó között a webkiszolgáló befolyásolja a válaszidő. Forgalomba tartalom több szerver különböző helyeken lehetővé teszi a felhasználók feltölteni az oldalakat gyorsabban. De hol kezdjem?
Először is, ne próbálja meg átírni az alkalmazás futtatásához az elosztott architektúra. Az alkalmazástól függően, a változó építészet magában ijesztő feladat, például szinkronizáló művelet állapot és lemásolják adatbázis-tranzakciók több szerver között. Megpróbálja csökkenteni a távolságot a felhasználók és tartalmak elakad, és nem lépik túl ezt a lépést a fejlődés az építészet.
Ne feledje, hogy 80-90% -a válaszidő a végfelhasználó által meghatározott terhelés a oldal elemek, képek, stílusok, scriptek, flash-görgőket. Ez - az aranyszabály a teljesítményt. Jobb, ha nem a statikus tartalom terjesztésére, mint hogy egy kihívást módosítását alkalmazás architektúra. Ez nem csak jelentősen csökkenti a válaszidőt, de ez is könnyebb, köszönhetően a tartalomszolgáltató hálózatok.
Content Delivery Network (CDN) - a csoport webszerverek elosztva különböző helyszíneken annak érdekében, hogy a leghatékonyabb a tartalomszolgáltatás a felhasználók számára. Jellemzően a tartalmat kifejezetten a felhasználó kiválasztja a legközelebbi hálózati szerver, például egy minimális számú áttétel közötti hálózatok vagy minimális válaszidő.
Néhány nagy cégek saját CDN, de a költség-hatékony felhasználását-CDN szolgáltató, például az Akamai Technologies, EdgeCast vagy 3. szint. Induló és magán weboldalak, talán nem engedheti meg magának, hogy CDN-szolgáltatás, de a növekedés a célközönséget, és az átállás a globális szinten CDN válik szükségessé. A Yahoo! Szolgáltatás előzményeinek statikus tartalmat webszerverek CDN alkalmazások (például a harmadik fél és a belső CDN-szolgáltatás Yahoo), jobb válaszidő a végfelhasználók számára 20% -kal vagy annál nagyobb. Napfény CDN - viszonylag könnyen változtatni a kódot, ami jelentősen javítja a betöltési időt az Ön honlapján.
„1C-Bitrix Site Manager” - az első orosz CMS, integrálódott a CDN hálózat szintjén a platform! Bármely webhely tulajdonosa jelentősen felgyorsítja a projekt szó szerint „egy kattintással”, anélkül, hogy további beállításokat!
Csatlakozás: Az adminisztrációs panel a honlapon a „Beállítások” fejezetet - „cloud szolgáltatások Bitrix” - „Gyorsítás hely (CDN)» Tick »Enable gyorsulás Site« és a módosítások mentéséhez.
3. Adjuk elévülési fejléc és a Cache-Control
Ez általában magában foglalja a két szempontból:
- Statikus elemek: állítsa be a politika «soha nem járnak» az elévülési fejléc
- Dinamikus elemek: használjon megfelelő Cache-Control fejléc feltételes lekérdezés böngészőt.
Webdesign egyre gazdagabb, ami azt jelenti, egyre több és több scriptek, stílusok, képek, és a Flash-hengerek az oldalon. Új látogató kell végezni néhány HTTP-kéréseket, hanem segítségével elévülési fejléc a cache ezeket. Ezzel elkerülhető a felesleges HTTP-kérések további oldal találatot. Lejár fejlécek gyakran képekkel, de fel kell használni az összes elemeihez, például szkriptek, stílusok és a Flash-henger.
Ha a szerver fut Apache használja ExpiresDefault irányelv gyorsíthatóságát időszak vonatkozásában az aktuális dátumot. Ez a példa ExpiresDefault irányelv létrehozza eltarthatósága 10 évig az aktuális dátumot.
Tartsuk szem előtt, hogy ha az elévülési fejléc, meg kell változtatni a nevét, az összetevőt a változó tartalmát. A Yahoo! Ez része a fordítási folyamat: a verziószám tartalmazza az összetevő neve, például yahoo_2.0.6.js.
4. A GZip tömörítés
Átviteli idő HTTP-kérés és válasz lehet használatával jelentősen csökkenthető a front-end megoldásokat. Természetesen a felhasználó kapcsolat sávszélessége, a szolgáltató hálózati hely, stb nem függenek a fejlesztők. De vannak más paraméterek, amelyek befolyásolják a válaszidő. A tömörítés csökkenti reakcióidőt csökkenti a méret a HTTP-válasz.
Kezdve HTTP / 1.1, webes kliensek támogatja a tömörítést elfogadás Encoding fejléc a HTTP-kérést.
Ha a webkiszolgáló észlel lekérdezés header, akkor tömöríteni a HTTP-válasz komponensek segítségével az egyik felsorolt módszerek az ügyfél. A web szerver értesíti az ügyfelet, hogy a Content-Encoding fejléc a HTTP- válasz.
Gzip-tömörítés csökkenti a méret a válasz mintegy 70%. Körülbelül 90% -a internetes forgalom (napján az írás) keresztül továbbítják a böngészők, amelyek azt állítják, hogy támogassa gzip. Ha az Apache, a modul határozza meg a tömörítési beállítások, a kiviteltől függően: Apache 1.3 használ mod_gzip-et. és Apache 2.x - mod_deflate.
Néhány ismert problémákat böngészők és proxy okozhat között eltérés, amit a böngésző fogja kapni, és fogadni tömörített tartalmat. Szerencsére ezek a problémák csökkennek, amennyiben frissítés böngészők. Apache modulok automatikusan hozzáadja a megfelelő válasz fejlécet Vary.
Web szerver határozza meg, hogy a borogatás, amely a fájl típusától, de általában meglehetősen korlátozottak a választás. A legtöbb oldalak tömörített HTML-dokumentumokat. Szintén érdemes tömöríteni szkriptek és stílusok, de sok helyen kihagyni ezt a lehetőséget. Elvileg van értelme tömöríteni bármilyen szöveges választ, beleértve az XML és JSON. Kép és PDF- nem szükséges tömöríteni a fájlokat, mivel azok már tömörített. Alkalmazás gzip, hogy ne csak feleslegesen növeli a terhelést a processzor, hanem növelheti a fájl méretét.
A lehető legszélesebb körű alkalmazására kompressziós különböző típusú fájlok - egy egyszerű módja annak, hogy csökkentsék az oldal méretét és javítja a felhasználói élményt.
5. Positioning stíluslapok elején a dokumentum
A vizsgálat során a teljesítmény Yahoo! azt találtuk, hogy ennek eredményeként az átadása stíluslapok a HEAD részben az oldalon oldalon úgy tűnik, gyorsabb. Ennek az az oka, hogy a helyét a stílus a HEAD részében egy oldal megjelenítésekor fokozatosan.
Front-end fejlesztők, akik érdeklődnek a nagy teljesítményű, inkább fokozatos terhelése az oldal, hogy van, azt akarjuk, hogy a böngésző megjeleníti a meglévő tartalmat, amint megkapja. Ez különösen fontos a nagy terhelésű oldalak és a felhasználók lassú kapcsolatok. Vannak tanulmányok és dokumentumok, amelyek bizonyítják, hogy fontos a visszacsatolás a felhasználó például terhelési mutatók. Esetünkben a HTML-oldal betöltése mutató! Ha progresszív betöltés sapkák, a navigációs sáv, a logó a fejlécben, mind ezek a komponensek végre egy visszacsatolási funkció a felhasználó számára, várva oldal betöltődik. Ez növeli a felhasználói élményt.
A probléma a helyét stílusok alján a dokumentum, hogy gátolja a fokozatos terhelés sok böngészők, beleértve az Internet Explorer. Ezek a böngészők blokkolják rendering, hogy ne kelljen újrarajzolni elemek változása esetén a stílusok. Ennek eredményeként a felhasználó lát egy üres, fehér oldal.
A HTML specifikáció egyértelműen hangsúlyozza, hogy a stíluslapot kell a HEAD rész: „Ezzel szemben az az elem A, LINK elem csak akkor lehet a HEAD részben, de megjelenhetnek tetszőleges számú alkalommal.” Egyik alternatíva, egy üres fehér képernyő vagy patak Unstyled tartalmat, a kockázat nem éri meg. A legjobb megoldás -, hogy kövesse a HTML specifikáció és a terhelés stílusok a HEAD részben.
Ahhoz, hogy tovább gyorsítsák fel a letöltési oldalon egyesült CSS-fájlt, akkor lefelé az oldalt, a zárás előtt