Sunucu tarafı performansını artırmak için atabileceğiniz birkaç adım vardır. Bunlardan bazılarının çoğu paylaşılan ana bilgisayarla çalışmayacağını unutmayın. Mükemmel performans için genellikle daha ince taneli kontrole ihtiyacınız vardır.
Tüm optimizasyonlarda olduğu gibi, sitenizin performansı üzerindeki etkisini ölçmelisiniz. Temel optimizasyonlar için PageSpeed ve YSlow gibi araçlar yararlıdır (Firefox sürümlerini öneriyorum). Daha derinlemesine bir anlayış için, canlı sisteminizin bir süre içinde gerçek yanıt sürelerini ölçmeniz gerekir.
PHP
Opcode Önbelleklemeyi Etkinleştir
Bu, sitenizin performansını artırmak için yapabileceğiniz en büyük şeydir. OpCache veya APC kullanmanızı öneririm . Bu önbelleklerin yapılandırması, sunuculara ve sitelere özgü ihtiyaçlara dayalı olarak daha da yüksek performans için değiştirilebilir, ancak sadece yükleme zaten büyük bir destek.
PHP sürümünü güncelleme
Yeni PHP sürümü düzenli olarak performans iyileştirmeleri ile birlikte gelir. Ayrıca, Joomla'nın daha yeni bir PHP sürümünde çalışırken daha iyi kod kullanabileceği birkaç durum vardır. Bugün performansı göz önünde bulunduruyorsanız PHP 5.4'ten daha eski bir PHP sürümü kullanmamalısınız.
PHP Ayarları
Daha eski PHP sürümlerinde (<= 5.3) kapanmaya register_globals
ve magic_quotes_gpc
ücretsiz performans kazanmaya özen gösterin. PHP> = 5.6'da always_populate_raw_post_data
-1 olarak değiştirilir .
PHP uzantıları
Joomla, eksik PHP uzantılarını çözmek için bazı kodlar içerir. Bu her zaman bu uzantılardan daha yavaş olacaktır. İyi bir performans iyileştirme için aşağıdaki uzantıları yüklemek: mbstring
, zip
,ftp
Web sunucusu
Gzip'i etkinleştir
Sunucu tarafı sıkıştırmayı etkinleştirmek CPU kaynakları için bant genişliğini değiştirir. Çoğu site için bu doğru çağrı. Yalnızca metin verilerini sıkıştırmaya dikkat edin, ikili verileri sıkıştırmak, bant genişliği avantajları olmadan CPU isabetini verecektir. Sıkıştırmayı Joomla ayarlarında da etkinleştirebilirsiniz, ancak sunucunun bununla başa çıkmasına izin vermeniz daha iyidir.
Statik kaynakları önceden sıkıştırma
Minimasyondan bahsetmiyorum (bu da yardımcı oluyor), ancak Nginx ve Apache'yi zaten sıkıştırılmış kaynakları sunucuya yapılandırabilir, gzip sıkıştırmasından gelen CPU vuruşunu etkili bir şekilde ortadan kaldırabilirsiniz. Bonus puanları: Daha küçük dosyalar için bile Zopfli kullanın .
PHP için FastCGI kullanın
Daha spesifik olarak kullanmalısınız php-fpm
. Bu, tarayıcı PHP olmayan bir dosya istediğinde PHP'nin başlatılmasını önler.
Uygun önbellek başlıklarını kullanın
Expires
Üstbilgiyi kullanmak , gereken sunucu kaynaklarını önemli ölçüde azaltabilir. Sonuçta en hızlı istek hiç yapılmayan istek.
Apaçi
Genellikle Nginx'i yüksek performanslı siteler için kullanmanızı öneririm. Kesinlikle bir nedenden dolayı Apache kullanmanız gerekiyorsa bonus ipucu aldım:
AllowOverride'ı devre dışı bırak
Ayar AllowOverride
için None
önler disk GÇ bir sürü ve
Joomla
FTP Modunu kullanma
Siteyi okuyan kullanıcılarınızı etkilemese de, uzantı yüklemesi gibi bazı işlemleri yavaşlatacaktır.
Kullanılmayan uzantıları kapatma
Bu özellikle Eklentiler için geçerlidir, bunların çoğu her istekte çalıştırılır. Menüleri ve bileşenleri devre dışı bırakmak, çoğunlukla mevcut uzantıları ve menü türlerini listelerken yardımcı olur. Ayrıca, Joomla çekirdeği ile birlikte gelen uzantıları incelemek ve kullanmadığınız uzantıları devre dışı bırakmak için 5 dakikanızı ayırın.
İçerik hazırlamayı kapatma
Çok sayıda özel modül kullanıyorsanız ( mod_custom
kendi kendine yazdığı gibi özel değil) Bunlarda içerik hazırlamayı devre dışı bırakıp bırakamayacağınızı kontrol edin. Bu, bazı işlemleri kurtarır.
Önbellek Kullan
Performans konusunda ciddiyseniz önbelleğe almayı etkinleştirmek istersiniz. Birçok anonim kullanıcısı olan ağır siteler için özellikle yararlıdır. Oturum açmış kullanıcılar önbelleğin çoğunu atlar, eğer bunlardan birçoğuna sahipseniz etkisi o kadar büyük olmaz.
Alternatif bir oturum işleyicisi kullanma
Alternatif bir oturum işleyicisi kullanarak daha önemli şeyler için veritabanınızı serbest bırakabilirsiniz. Ben bir kez daha disk IO artıracak gibi dosya (kafa karıştırıcı Joomla ayarlarında Yok denir) tavsiye etmem. APC kullanmak potansiyel olarak daha hızlıdır, ancak tüm oturum verilerini kaybetme riskini artırır. Sağ orta yol Memcache. Bu ek bir işlem gerektirse de, APC'den daha güvenilir ve tüm verileri veritabanında depolamaktan çok daha hızlı
Sitenizi basit tutun
Gerçekten Facebook düğmesine ihtiyacın var mı? Hiç kimsenin görmediği sevimli simgeye, kısmen bir afişin arkasında gizlendiğine ne dersiniz? Siteniz ne kadar az görüntülenirse o kadar hızlı olur. Ayrıca mümkün olan her yerde resimler yerine CSS3 kullanın.
Çeşitli
Sık kullanılan simgesi ayarlama
Internet Explorer 4.0'a dayanan bir karar sayesinde tarayıcılar favicon.ico
kullanıcı sitenizi her ziyaret ettiğinde çağrılan bir dosya için istekte bulunur . Eğer bir hesabınız yoksa, 404 yanıtları önbelleğe alınmadığından bu gereksiz G / Ç'ye neden olur. Sitenizin simgesini bir HTML meta etiketi ile belirtin veya favicon.ico
web köküne çağrılan bir dosya ekleyin . Favicon istemiyor musunuz? Bu konuma 1x1 piksel boyutunda saydam bir PNG yerleştirin. Uzantının hala olması gerektiğini unutmayın .ico
.
Resimlerinizi optimize edin
Görüntüleri, özellikle PNG dosyalarını optimize ederek ne tür bir tasarruf elde edebileceğiniz şaşırtıcı. Herhangi bir işletim sistemi için çeşitli araçlar vardır, kişisel olarak OS X için mevcut olan ImageOptim'i kullanıyorum . Joomla'nın çekirdek görüntüleri zaten optimize edildi, ancak kendi resimlerinize gidin, özellikle şablonlar önemlidir. Kullandığınız uzantıları da kontrol edebilirsiniz. Açık kaynaksa, neden yeni optimize edilmiş görüntüler içeren bir çekme isteğine katkıda bulunmuyorsunuz?
Gelişmiş
Gerçekten dışarı çıkmak istiyorsanız, Vernik'i sitenizin önüne koymayı düşünün . Sitenize gelen istekleri önbelleğe alır ve mümkünse Joomla'ya çarpmadan kendi önbelleğinden sunar. Karmaşık bir araç ama çok fazla gücü var. Joomla, Edge Side Includes (ESI) gibi gelişmiş işlevlerden faydalanmayacak, ancak kendi kodunuz olabilir.