Magento Performansını İyileştirelim

Magento Performansını İyileştirelim

Magento hakkında aşağıda vereceğimiz bilgiler Magento’nun versiyonlarına göre değişiklik gösterebilir. Biz bu anlattıklarımızı Communitiy 1.9.1 versiyonunu kullanarak anlatıyor olacağız. Aşağıdaki maddeleri uygulamadan önce sitenizin performans raporunu GTmetrix kullanarak ölçün. Aşağıdaki maddeleri tamamladıktan sonra yeni bir rapor alarak farkı karşılaştırın.

1) .htaccess İnce Ayarları

Magento kurulumu ile standart olarak oluşturulmuş .htaccess dosyasında sizin opsiyonunuza bırakılmış ve aktif edilmemiş birkaç ayar bulunmaktadır. Aşağıdaki ayarlar sonrasında Magento performasınızda %30′ luk bir iyileşme görülecektir.

Output compression’u Aktif Hale Getirelim

Bu bölüm Apache mod_deflate modülünü aktif hale getirecektir. Bu text, css ve javascript dosyalarını sıkıştırdıktan sonra browsera gönderecek ve sayfa yükleme hızları ciddi şekilde etkilenecektir.

############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip
# Insert filter on all content
SetOutputFilter DEFLATE

# Insert filter on selected content types only
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript

# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html

# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip

# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

# Don't compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary

expires headers’ ı Aktif Hale Getirelim

Uyarı: Bu modül LiteSpeed sunucularda çalışmamaktadır.

Tarayıcıların içeriği ne kadar süre önbellekte tutacaklarını belirleyen bu modül, tarayıcının aynı sayfayı ve sayfa ile yüklenen nesneleri tekrar tekrar önbelleğe alarak zaman kaybetmesini önler.

############################################
## Add default Expires header
## http://developer.yahoo.com/performance/rules.html#expires

ExpiresActive On
ExpiresDefault "access plus 1 year"

ETags Etiketini Kapatalım

Etags önbelleğe alınmış öğeleri tarayıcılarda kullanıcıların bir sonraki ziyaretlerinde herhangi bir değişiklik olup olmadığına bakarak doğrular ve değişiklik var ise sayfayı yeniden tüm nesneler ile birlikte önbelleğe alınmasını sağlar. Tamamen isteğe bağlı olmasına rağmen Magento mağazamızda bu sunucumuza extra yük bindireceği için yavaşlatacaktır. Kapatmak en doğru tercih olacaktır.

############################################
## If running in cluster environment, uncomment this
## http://developer.yahoo.com/performance/rules.html#etags

FileETag none

2) Magento Sistemi İnce Ayarları

Genel olarak aşağıdaki ayarlar Magento’ nun değişmeyen bileşenleri olduğu için 1.4.1 versiyonu ve sonrasındaki versiyonlar için geçerli olacaktır.

CSS ve JS Dosyalarını Birleştirelim

  1. Yönetim panelinizde Sistem > Ayarlar > Geliştirici.
  2. Javascript Ayarları, altında, Javascript Dosyalarını Birleştir’ seçeneğini EVET yapalım
  3. CSS Ayarları, altında CSS Dosyualarını Birleştir seçeneğini EVET yapalım
  4. Önbellek yönetiminden Cachlerimizi yenileyelim.

Flat (Sabit) Katalog Özelliğini Aktif Hale Getirelim

Magento müşteri ve ürün verilerini depolamak için EAV modelini kullanır. Bu model nesnelerin inanılmaz bir şekilde genişletilebilmesini sağlamasına rağmen, SQL üzerinde çalıştırdığı sorgular sebebi ile (özelliklede 1000 den fazla ürününüz varsa) SQL sorgu süreleri oldukça uzar ve sisteminiz can sıkıcı bir şekilde yavaşlar. Flat Katalog ise ürünleri ve verileri tek bir tabloda toplayarak daha hızlı sorgu üretilmesini sağlar.

  1. Yönetim panelinizde Sistem > Ayarlar > Katalog
  2. Ön Sayfa, altında Ürünlerde Sabit Katalog Kullan (Use Flat Catalog Category) seçeneğini EVET yapalım
  3. Eğer isterseniz yine Ön Sayfa, altında Ürünlerde Sabit Katalog Kullan (Use Flat Catalog Product) seçeneğini de EVET yapmanızda yarar var
  4. Cachelerinizi yenileyin.

GTmetrix’e giderek tekrar bir test işlemi yapalım 🙂

Split Test Prima Posizione