2 GB RAM'e sahip korumasız bir Drupal 7 sitesi tatmin edici bir şekilde saniyede yaklaşık 20-25 istek verebilir. Bunun ötesine geçmek istiyorsanız, site biraz tweaking gerektirecektir. Ayarladığınız şey, sitedeki kullanıcıların çoğunun isimsiz veya doğrulanmamış olup olmamasına bağlıdır. Performans iyileştirme için yapabileceğiniz en iyi şeyler:
Site çoğunlukla adsız kullanıcılara hizmet veriyor:
1) APC, memcache ve entitycache kodunu kesinlikle kurun ve yapılandırın.
2) Varnish proxy'yi web sunucusunun önüne koyun. Yüklemek ve yapılandırmak yaklaşık 30 dakika sürer ancak sayfa yükleme sürenizi önemli ölçüde azaltır. Aslında, tüm sayfalar önbelleğe alınmışsa Varnish, 2 GB'lik bir makinede saniyede yaklaşık 300 istek yapabilir. İçerik güncelleme / silme işleminde yalnızca seçili sayfaların süresinin dolması için Son kullanma modülünü kullanın.
3) CSS ve JS dosyalarını toplamak için Gelişmiş CSS / JS Toplama modülünü kullanın. Tüm JS dosyalarını sayfanın altına taşımayı deneyin. Ancak bunun sitenizi bozabileceğini unutmayın, bu nedenle kapsamlı testlerden sonra bunu üretimde uygulayın. Ayrıca satır içi kritik CSS ile deneme yapın. Deneyimlerime göre sayfa yükleme süresini yaklaşık yarım saniye azaltacaktır.
4) CSS / JS / resimlerin gelecekteki son kullanma tarihi geçmiş başlıkları olmalıdır. Bu, tarayıcıların tekrar tekrar aynı CSS / JS / görüntüleri talep etmemesini sağlayacaktır.
5) Web sunucusunun sıkıştırılmış sayfalar / CSS / JS sunduğundan emin olun.
Yukarıdaki 5 adımı uyguladıktan sonra, 2 GB RAM sunucunuzun saniyede 50 isteği kolayca yerine getirebilmesi gerekir.
Site çoğunlukla kimliği doğrulanmış kullanıcılara hizmet veriyor:
Böyle bir siteyi optimize etmek daha karmaşık. Bu tür siteler, optimizasyon amacıyla iki alt kategoriden birine girer:
(a) Sitedeki sayfaların çoğu, kullanıcıya özel bilgileri olan 1 veya 2 blok dışında aynıdır. Örneğin Drupal Ticaret sitesi için.
(b) Sayfaların çoğu kullanıcı için tamamen özelleştirilmiştir. Örneğin Drupal Commons sitesi için.
Siteniz (a) kategorisine girerse, çoğunlukla anonim kullanıcılara hizmet veren site için tartıştığımız tekniklerin çoğunu uygulayın. Tek fark, yönetici olmayan sayfalar için Varnish'in SESSION çerezini başlıktan kaldırması ve önbelleklenmiş sayfalar sunması gerekir. AJAX kullanarak kullanıcıya özel bilgileri içeren sunucu blokları oluşturmak için AJAX Blok modülünü kullanın. Bu şekilde, sayfanın çoğu Varnish kullanılarak çok hızlı bir şekilde sunulacak ve daha sonra kullanıcıya özel bilgiler AJAX üzerinden sunulacaktır.
Siteniz (b) kategorisine girerse, Authcache modülünü kullanın. Oldukça fazla yapılandırma ve bakım gerektirdiği için mümkün olduğunca kullanmamayı tercih ediyorum. Ama gerçekten iyi çalışıyor. Varnish kullanmak kadar hızlı olmayacak, ancak aradığınız saniyede 50 istekle başa çıkabilecek.
Burada tartıştıklarımızın ötesine geçmeyi düşünüyorsanız Drupal Performans Optimizasyon Kontrol Listesine bakınız . Açıklama: Benim tarafımdan yazılmıştır. Drupal sitenizi cayır cayır yanan yapmak için yapabileceğiniz şeylerin kapsamlı bir listesini verir.