Hogyan lehet optimalizálni egy webhelyet magentán?
Magento lassú. Az oldalak betöltésének egyszerűsített módon történő gyorsítása két kifejezést tartalmaz: "az első bájtra küldött idő" (TTFB - az első bájtig terjedő idő) és a megjelenítés ideje a böngészőben.
Mielőtt elindulna a frontend optimalizálásához, meg kell próbálnia javítani a TTFB mutatót.
TTFB optimalizálás
Először is meg kell értenünk, hogy Magento "belsejében" van. Ehhez nagy beépített eszközt használunk - a Magento Profiler. Megmutatja a belső hívások jegyzékét a Magento számára és a megfelelő munkameneteket.
A kódoláson belül a Profilerbe is küldhet hívásokat a teljesítmény méréséhez és a szűk keresztmetszetek azonosításához.
A Magento Profiler engedélyezése
A Magento adminisztrációs panelen válassza a Rendszer> Konfiguráció> Speciális> Fejlesztő> Feladatbázis> Profiler menüpontot, majd válassza az "Igen" lehetőséget.
Győződjön meg róla, hogy visszaállítja a gyorsítótárat a Magento-ban. a Profiler eléréséhez.
Hogyan használhatod a Profilert a kódodban?
Add meg a Varien_Profiler :: start ('any_name') és a Varien_Profiler :: stop ('any_name') sorokat annak a kódnak a blokkjához, amelyre alkalmazni szeretné a Profilert.
Amit a Profiler ad ki
Kód Profiler - azonosító. amelyet a Varien_Profiler :: start és a Varien_Profiler :: stop hívások során használt
Az idő másodpercben az idő. amely a kódot a Varien_Profiler :: start és a Varien_Profiler :: stop között veszi át
Cnt az a szám, ahányszor ez a kódblokk az oldal betöltésekor futott
Emalloc - a PHP-hez rendelt memória mennyisége, míg a kód ezen része az emalloc rendszerhíváson keresztül fut
RealMem - a fizikai memória mennyisége a PHP folyamat számára, amíg a kód ezen része fut.
Tiltsa fel a felesleges modulokat
Menj a webhelyed oldalára, és nézd meg, mit jelenít meg a Profiler. Először keresse meg a sorokat az OBSERVER szóval. Ezek felügyeleti modulok, amelyek minden bizonnyal minden egyes oldal elérésekor elindulnak. Néhány közülük letiltható. Ha például nem használ értékelési szabályokat és beállításokat, akkor letilthatja a megfelelő Mage_Review és Mage_SalesRule modulokat.
Íme egy közelítő lista az alapértelmezett Magento bővítményekről. amelyre nincs szükség:
- Mage_Reviews
- Mage_SalesRule
- Mage_Wishlist
- Mage_Bundle
- Mage_Downloadable
- Mage_Paypal
- Mage_Log
Ezenkívül további bővítményeket is telepíthet, amelyekre már nincs szüksége, de minden alkalommal, amikor az oldal betöltődik, elindítja elsődleges felügyeleti modulját. Ez lassítja webhelyét.
Optimalizálja a kódot. phtml témafájlok
A témafájlok PHP kódja optimalizálható. Íme egy példa:
Nem szükséges betölteni a modellt a katalógusból / termékből minden foreach hurokban. mivel a $ _ termék már meghatároz egy modellt a katalógusból / termékből. Ha az árukészlet elég nagy, sok, sok felesleges hívást lehet igénybe venni.
Ez csak egy példa arra, hogyan lehet a php kódot nem optimalizálni.
Frissítse a Magentót a legújabb verzióra
A Magento csapat folyamatosan dolgozik a termék javítása érdekében. Ha van egy Magento régi verziója. hajtsa végre a frissítést. Az új kiadások számos kernelfájlban tartalmaznak kódváltozásokat, amelyek célja a Magento belső logikájának javítása.
A frontend optimalizálása
Most nézzük meg, hogyan gyorsíthatja fel a renderelést egy valós böngészőben.
Kezdetben a Google Page Speed 68/100.
A JS / CSS fájlok tömörítése és lerövidítése különálló mellékállomásokként érhető el a Magento számára.
A látható tartalom azonnali CSS-jének biztosítása

Miután ezt megtettük, a következő eredményt kapjuk:


Alapértelmezésben egy láthatatlan szűrővel ellátott könyvjelzőt hozhat létre, hozzáadva a "display: none" opciót a megfelelő CSS-request @ media-hez.
Most már 100/100 sebessége van.

2. Egyéb oldalak
Most, hogy már megtettük munka TTFB és lusta rakodási JS és CSS, minden marad számunkra, hogy - az, hogy menjen át a többi oldal és a munka azonnal látható tartalom (ATF).
Itt találja meg a termékkártya, az oldal a kosárral és a webhely tipikus oldalával elért eredményeket:


GGooglePageSpeed oldal kosárral
Így sikerült 100/100 sebességbecslést elérni a webhely szinte minden oldalához.
Végül megjegyezzük, hogy a webhely felgyorsításának munkája összetett és monoton lehet, de az eredmények tetszenek. A webhely oldalai gyorsabban töltődnek be gyorsítótár nélkül is. Gyorsítótár! = Teljesítmény. Tehát először optimalizálni kell a TTFB-t. amit a Magento webhelyén kap, majd optimalizálja a frontend megjelenítését.
