Drupal Ölçeklendirme

5 Cevap php

Drupal tabanlı bir site üzerinde çalışan ve ayrı CSS ve js dosyaları bir yeri vardır fark ediyorum. Ben de çok sorgular çok kullanılan epeyce durumlarda görebilirsiniz bazı kod olsa sığ.

Drupal ve performansını artırmak için hangi modülleri (varsa) 'kutunun dışında' Drupal performansını artırmak için kullanmak ne teknikleri denediniz mi?

5 Cevap

, Admin / ayarlar / performans sayfasına giderek CSS ve JS toplama açma ve 1 dakika minimum ömür boyu sayfa önbelleğe alma, size yüksek trafik sitede hemen bir destek verecek. Eğer kendi kod yazma ve herhangi bir sorgu yapıyorsanız, kendi ayrık caching for expensive functions yazma düşünün. Bağlanmış makale Drupal 5 değil 6 kapsar, ancak d6 içinde tek değişiklik serileştirme gereksinimi ve işlevi imza cache_set için () ve cache_get () fonksiyonları elimiation olduğunu. (Yazı hakkında açıklamalarda belirtildiği Hem)

Büyük ölçekli sitelerde de ağa bir memcached sunucusu bırakarak düşünün: memcached modülünü kullanarak, tamamen önbelleğe alınan veriler için drupal veritabanını atlayabilir. Eğer içeriğin büyük miktarlarda olması ve arama bir sıcak nokta ise, yerine de Drupal yerleşik arama dizinleyicinin sizin arama dizinleyicisine olarak Solr lucene / kullanarak düşünebilirsiniz. Bu yerleşik bir dizinleyicisine için güzel ama (ağır yönlü arama ile, diyelim ki, içerik yeni parçaları yüzlerce veya binlerce saat) ağır yükler için tasarlanmış değil. apache solr modülü ile içinde kravat olabilir.

Eğer İzlenme ağır yararlanarak iseniz, bunu Sıralanmayan alanlar için oluşturduğu sorguları kontrol ettik emin olun; CCK otomatik olarak birincil anahtar ötesinde dizinleri eklemek değildir, çünkü özellikle CCK alanlara göre sıralama ve filtreleme, yavaş olabilir. D6 olarak, yönetici ekranında Görünüm önizleme sorgusunun metni kopyalayıp, ve mysql ya da her türlü sorgu analiz var araçlar İZAH ile çalıştırın.

YSlow ve Firebug gibi araçlar da böylece JS uzak sunucularda barındırılan, büyük resim dosyaları gibi şeyler yavaş nokta yardımcı olabilir ve.

Drupal 6, out-of-the-box, css ve javascript toplanmasını sağlar --- en css ve js dosyaları tek bir dosyada birleştirilir (ve böylece tek bir HTTP isteği), ve de (bant genişliğini azaltmak için boşluk-kısaltılmamaktadır olacak tüketimi). Bu altında / admin / ayarlar / performans etkinleştirebilirsiniz.

Ayrıca bu ekranda veritabanı sorgu sayısını azaltmaya yardımcı olur Drupal (çok etkili) önbellek için kontroller vardır.

Ayrıca, Drupal (ve muhtemelen yüklü olacak tüm modüller), çünkü bu tür APC anlamlı istek süresini azaltmak yardımcı olur gibi bir PHP opcode önbellek kullanarak, PHP kaynak bir ton var.

boost module, aynı zamanda çok büyük bir performans artışı sağlar. Bunu lutfen kullanmanızı tavsiye ediyorum

Ben kuvvetle ikinci Boost modülün Benedict'in önerisi - tek başına doğru yapılandırılmış eğer web, hosting üzerinde sinek yapacak, ve gerçekten de tüm adamcağız değildir.

CSS / JS toplama açın Boost açın ve sitenizin anonim kullanıcılar için çok iyi gerçekleştirebilirsiniz.

Siteniz çoğunlukla kayıtlı kullanıcıları ile ilgilenen varsa, emin oturumları iyi önbelleğe yapma çok daha fazla iş yapmak zorunda olacak ve muhtemelen memcached ve daha fazla SQL sorgusu önbelleğe kullanmayı düşünün ediyoruz.

Büyük performans kazançları her zaman önbelleğe ama izleme ve yavaş sorguları ayarlama, izleme ve apache ve PHP yapılandırmaları ayarlama gelen, ve kullandığınız modülleri hakkında akıllı olmak da çok önemlidir.

Drupal varsayılan önbellek dışında, bazı performansını artırmak için başka bir yöntem vardır

Boost module is one of the best. memcache, Varnish(Drupal 7/Pressflow), CDN are the another methods that can improve the performance