Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bilgi Bankası

Anasayfa Bilgi Bankası Genel Magento için Performanslı Sunucu Ya...

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR

Magento için Performanslı Sunucu Yapılandırması

Magento için Performanslı Sunucu Yapılandırması

Magento, güçlü ve esnek bir e-ticaret platformu olmasına rağmen, doğru yapılandırılmamış bir sunucuda performans sorunları yaşatabilir. Bu makale, Magento tabanlı mağazanızın en iyi performansı göstermesi için ideal sunucu yapılandırmasına odaklanmaktadır. Amacımız, hızlı yükleme süreleri, düşük sunucu yükü ve yüksek dönüşüm oranları elde etmenize yardımcı olmaktır.

1. Doğru Sunucu Seçimi ve Donanım Gereksinimleri

Magento için sunucu seçimi, mağazanızın büyüklüğü, trafik hacmi ve ürün kataloğunun karmaşıklığı gibi faktörlere bağlıdır. Paylaşımlı hosting genellikle küçük mağazalar için yeterli olabilirken, orta ve büyük ölçekli mağazalar için VPS (Sanal Özel Sunucu) veya Dedicated Server (Özel Sunucu) daha uygundur. Bulut tabanlı çözümler (AWS, Google Cloud, Azure) de ölçeklenebilirlik ve esneklik açısından avantajlar sunar.

1.1. Temel Donanım Gereksinimleri

Magento 2 için önerilen minimum donanım gereksinimleri şunlardır:

  • İşlemci (CPU): En az 2 çekirdekli işlemci (Önerilen: 4 veya daha fazla çekirdek)
  • Bellek (RAM): En az 4 GB RAM (Önerilen: 8 GB veya daha fazla, özellikle büyük kataloglar için)
  • Depolama (Disk): En az 10 GB SSD (Önerilen: 50 GB veya daha fazla, SSD performansı artırır)

Bu minimum gereksinimler, küçük bir mağaza için başlangıç noktasıdır. Mağazanız büyüdükçe ve trafik arttıkça, bu gereksinimleri artırmanız gerekebilir. Disk alanı için SSD kullanmak, dosya okuma ve yazma hızlarını önemli ölçüde artırarak Magento performansını olumlu yönde etkiler.

1.2. Sanallaştırma Teknolojileri

VPS veya bulut sunucu kullanıyorsanız, sanallaştırma teknolojisi de önemlidir. KVM (Kernel-based Virtual Machine) genellikle Xen'den daha iyi performans sunar. Docker gibi konteyner teknolojileri de Magento uygulamalarını izole etmek ve yönetmek için kullanılabilir.

2. Optimizasyonlu PHP Yapılandırması

PHP, Magento'nun temelini oluşturur. Doğru PHP yapılandırması, performansı önemli ölçüde etkileyebilir. Aşağıdaki PHP ayarlarının optimize edilmesi önemlidir:

2.1. PHP Sürümü ve Uzantılar

Magento 2, PHP'nin belirli sürümlerini destekler. En son desteklenen sürümü kullanmak, performans ve güvenlik açısından önemlidir. Magento 2.4.x sürümleri genellikle PHP 7.4 veya PHP 8.1 ile en iyi performansı gösterir.

Gerekli PHP uzantıları şunlardır:

  • ext-bcmath
  • ext-ctype
  • ext-curl
  • ext-dom
  • ext-gd
  • ext-hash
  • ext-iconv
  • ext-intl
  • ext-json
  • ext-libxml
  • ext-mbstring
  • ext-openssl
  • ext-pdo_mysql
  • ext-simplexml
  • ext-soap
  • ext-spl
  • ext-xsl
  • ext-zip
  • ext-zlib
  • php-xdebug (Geliştirme ortamı için)

2.2. PHP Opcode Önbellekleme (OPcache)

OPcache, PHP kodunu önbelleğe alarak performansı önemli ölçüde artırır. php.ini dosyasında OPcache'in etkinleştirilmesi ve yapılandırılması gerekir:

; OPcache ayarları
opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.validate_timestamps=0 ; Üretim ortamında 0 olmalı, geliştirme ortamında 1
opcache.revalidate_freq=60 ; Geliştirme ortamında, önbelleği ne sıklıkta kontrol edeceği

opcache.validate_timestamps ayarı, üretim ortamında 0 olarak ayarlanmalıdır. Bu, PHP dosyalarının her istekte kontrol edilmesini önler ve performansı artırır. Geliştirme ortamında ise 1 olarak ayarlanması, kod değişikliklerinin hemen yansımasını sağlar.

2.3. PHP Bellek Limiti (memory_limit)

Magento'nun çalışması için yeterli PHP belleği tahsis edilmelidir. memory_limit ayarı, php.ini dosyasında ayarlanır. Genellikle 256M veya 512M yeterli olabilir, ancak büyük kataloglar veya karmaşık işlemler için daha yüksek bir değer gerekebilir:

memory_limit=512M

3. Veritabanı Optimizasyonu (MySQL/MariaDB)

Magento, verileri depolamak ve yönetmek için bir veritabanı kullanır. MySQL veya MariaDB gibi veritabanlarının doğru yapılandırılması, performansı önemli ölçüde etkiler.

3.1. Veritabanı Sunucu Ayarları

my.cnf (veya my.ini) dosyası, MySQL/MariaDB sunucusunun yapılandırma dosyasdır. Bu dosyada aşağıdaki ayarların optimize edilmesi önemlidir:

  • innodb_buffer_pool_size: InnoDB buffer pool'unun boyutu. Sunucudaki RAM'in %50-80'i kadar ayarlanabilir.
  • query_cache_type ve query_cache_size: MySQL 8.0'da kaldırıldı. MariaDB'de hala kullanılıyorsa, dikkatli kullanılmalı. Genellikle devre dışı bırakmak daha iyidir.
  • max_connections: Sunucuya aynı anda bağlanabilecek maksimum bağlantı sayısı.
  • innodb_log_file_size ve innodb_log_files_in_group: InnoDB log dosyalarının boyutu ve sayısı.

Örnek bir my.cnf yapılandırması:

[mysqld]
innodb_buffer_pool_size = 6G
max_connections = 500
innodb_log_file_size = 256M
innodb_log_files_in_group = 2

3.2. Veritabanı İndeksleri

Doğru indeksler, veritabanı sorgularının hızını önemli ölçüde artırır. Magento, bazı indeksleri otomatik olarak oluşturur, ancak özel sorgular veya raporlar için ek indeksler oluşturmak gerekebilir. Magento Admin Panel'inden "System -> Index Management" bölümünden indekslerin durumunu kontrol edebilir ve yeniden indeksleme işlemini başlatabilirsiniz.

3.3. Veritabanı Önbellekleme

Veritabanı sorgularını önbelleğe almak, performansı artırabilir. Redis veya Memcached gibi harici önbellekleme sistemleri kullanılabilir. Magento, bu sistemleri destekler ve yapılandırılabilir.

4. Önbellekleme Stratejileri

Magento'da farklı önbellekleme türleri bulunur. Bunların doğru yapılandırılması, performansı önemli ölçüde etkiler.

4.1. Magento Dahili Önbellekleme

Magento, yapılandırma, blok çıktıları, koleksiyonlar ve tam sayfa önbelleği gibi farklı önbellekleme türlerini destekler. Magento Admin Panel'inden "System -> Cache Management" bölümünden önbellek türlerini etkinleştirebilir, devre dışı bırakabilir ve temizleyebilirsiniz.

4.2. Tam Sayfa Önbellekleme (Full Page Cache - FPC)

Tam Sayfa Önbellekleme (FPC), sayfaların tamamını önbelleğe alarak performansı önemli ölçüde artırır. Magento'da varsayılan olarak etkinleştirilmiştir, ancak doğru yapılandırılması önemlidir. Varnish veya Redis gibi harici önbellekleme sistemleri, FPC için kullanılabilir.

4.3. Varnish Cache

Varnish, HTTP hızlandırıcı olarak çalışan açık kaynaklı bir önbellekleme sistemidir. Magento ile entegre edilebilir ve FPC için kullanılabilir. Varnish, statik ve dinamik içerikleri önbelleğe alarak sunucu yükünü azaltır ve sayfa yükleme sürelerini kısaltır.

Varnish konfigürasyonu (default.vcl):

vcl 4.0;

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

4.4. Redis Önbellekleme

Redis, bellek içi veri yapısı deposu olarak çalışan açık kaynaklı bir önbellekleme sistemidir. Magento için oturumları, önbelleği ve kuyrukları depolamak için kullanılabilir. Redis, hızlı okuma ve yazma hızları sayesinde performansı artırır.

Magento'da Redis'i yapılandırmak için env.php dosyasını düzenleyin:

'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Cm_Cache_Backend_Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'port' => '6379',
                'database' => '0',
                'password' => '',
                'compress_data' => '1',
                'compression_lib' => 'gzip'
            ]
        ],
        'page_cache' => [
            'backend' => 'Cm_Cache_Backend_Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'port' => '6379',
                'database' => '1',
                'password' => '',
                'compress_data' => '0'
            ]
        ]
    ]
],
'session' => [
    'save' => 'redis',
    'redis' => [
        'host' => '127.0.0.1',
        'port' => '6379',
        'password' => '',
        'database' => '2',
        'compression_algorithm' => 'gzip',
        'compression_level' => '6',
        'max_concurrency' => '6',
        'break_after_frontend' => '5',
        'break_after_adminhtml' => '30',
        'first_lifetime' => '600',
        'lifetime' => '600'
    ]
]

5. Diğer Optimizasyon İpuçları

  • Görüntü Optimizasyonu: Görüntüleri optimize etmek, sayfa yükleme sürelerini önemli ölçüde azaltır. WebP formatını kullanın ve görüntüleri sıkıştırın.
  • CDN (İçerik Dağıtım Ağı): CDN kullanarak statik içerikleri (görüntüler, CSS, JavaScript) farklı sunuculardan dağıtmak, performansı artırır.
  • Minifikasyon ve Birleştirme: CSS ve JavaScript dosyalarını minifiye etmek ve birleştirmek, HTTP istek sayısını azaltır.
  • HTTP/2: HTTP/2 protokolünü etkinleştirmek, performansı artırır.
  • Güncel Tutma: Magento ve eklentilerinizi düzenli olarak güncel tutmak, performans ve güvenlik açısından önemlidir.
  • Performans İzleme: New Relic veya Blackfire.io gibi araçlar kullanarak performansı izlemek ve sorunları tespit etmek önemlidir.

Sonuç ve Özet

Magento için performanslı bir sunucu yapılandırması, dikkatli planlama ve sürekli optimizasyon gerektirir. Doğru donanım seçimi, optimize edilmiş PHP ve veritabanı ayarları, etkili önbellekleme stratejileri ve diğer optimizasyon ipuçları, Magento mağazanızın en iyi performansı göstermesini sağlar. Bu makalede sunulan bilgileri uygulayarak, hızlı yükleme süreleri, düşük sunucu yükü ve yüksek dönüşüm oranları elde edebilirsiniz. Unutmayın ki performans optimizasyonu sürekli bir süreçtir ve düzenli olarak izleme ve iyileştirme yapılması gerekmektedir.  

Aradığınız Bilgiyi Bulamıyor musunuz?

Bilgi bankasını detaylı olarak incelediniz, fakat ihtiyacınız olan bilgiyi bulamıyorsanız,

Bir Destek Talebi Oluşturun.
Faydalı Buldunuz mu?
(45807 defa görüntülendi. / 21018 kişi faydalı buldu.)

Ürün ve hizmetlerimiz hakkında daha detaylı bilgi almak için hemen arayın.

Top