Grav - Performans ve Önbelleğe Alma
Bu bölümde, Grav'da performans ve önbelleğe alma kavramlarını anlayacağız.
Verim
Performans terimi, sistemdeki daha yüksek yükü kaldırıp kaldıramayacağı ve sistemi daha yüksek bir yükü kaldıracak şekilde değiştirip değiştiremeyeceği şekilde sistem performansını ifade eder.
Grav performansıyla ilgili aşağıdaki noktaları göz önünde bulundurun -
Grav'ın daha iyi performansına sahip olmak için PHP'yi kullanabilirsiniz. opcache ve usercache. Opcache PHP 5.4 ile iyi çalışır ve usercache PHP 5.5, PHP 5.6 ve Zend opcache ile daha hızlı çalışır.
SSDFlash bellek kullanan ve hareketli parçası olmayan (Katı Hal Sürücüsü). Bazen önbellek kullanıcı önbelleğinde saklanır veya dosyalar olarak depolanır. Böylece SSD sürücüler daha iyi performans sağlayabilir.
Sanal makineler, bulut bilişim teknolojisi altında sağlayıcıları barındırmanın en iyi yoludur. Kaynakları fiziksel ekipmanla etkileşime girmeden belirleyebilirsiniz.Native hostingsanal makineden daha hızlıdır. Grav, sanal makinelerde daha iyi çalışır, ancak optimum performans için yerel barındırma seçeneğini kullanabilirsiniz.
Grav var faster memoryönbelleğinin sunucunuzda daha iyi performans sağlayan ağır bellek kullandığı. Diğer platformlarla karşılaştırıldığında daha az bellek kullanır.
Grav kullanır shared hostingPaylaşılan sunucuda şeyleri paylaşmak için. Paylaşım barındırma düşük bir maliyetle mevcuttur ve bazen sunucudaki işleri yavaşlatabilir.
Çok çekirdekli işlemciler, birden çok görevi daha hızlı gerçekleştirmek için kullanılır. Gelişmiş işlemciler bu işlemcilerden daha iyidir ve kullanıcının görevi yerine getirmesine yardımcı olur.
Önbelleğe almak
Genel olarak önbellek, önbellekte saklanan bir veridir. Önbellek mekanizması, Grav'ı daha hızlı hale getirerek, tarayıcının dosyaları orijinal sunucudan ziyade önbellekten alabilmesini sağlayarak zamandan ve ek ağ trafiğinden tasarruf sağlar.
Grav, aşağıdakileri destekleyen Doctrine Cache kütüphanesini kullanır -
Otomatik (Varsayılan) - Varsayılan seçeneği otomatik olarak kullanır.
Dosya - Dosyada bulunan önbellek dosyalarını belirtir. cache/ Klasör.
APC
XCache
Memcache
Redis
WinCache
Varsayılan olarak, Grav otomatik ayarı kullanır. APC'yi deneyecek, ardından WinCache, XCache ve son olarak da File'ı kullanacaktır.
Önbelleğe Alma Türleri
5 tür önbelleğe alma vardır -
YAML konfigürasyonunun PHP'ye önbelleğe alınması.
Sayfa nesneleri için Core Grav önbelleğe alma.
Şablon dosyalarının PHP sınıfları olarak önbelleğe alınması.
Medya kaynakları için görüntü önbelleğe alma.
Ardışık düzen ile CSS ve jQuery'nin varlık önbelleğe alınması.
YAML yapılandırmasının önbelleğe alınması /cacheKlasör. Görüntü önbelleğe alma, görüntülerini/imagesKlasör. Çekirdek Grav önbelleğe alma için yapılandırma seçeneği şurada saklanır:user/config/system.yml dosya aşağıda gösterildiği gibi -
cache:
enabled: true
check:
method: file
driver: auto
prefix: 'g'
enabled seçeneği true olarak ayarlayarak önbelleğe almayı etkinleştirir.
method seçeneği, dosyalar veya klasörler gibi sayfalardaki güncellemeleri kontrol eder.
driver seçeneği, Otomatik, Dosya, APC, XCache, Memcache, Redis veya WinCache gibi farklı önbelleğe alma seçeneklerini belirtir.
prefix seçenek önbellek önek dizesini tanımlar.
Memcache Seçenekleri
Eğer kullanıyorsanız memcached server, ardından bazı ekstra yapılandırma seçenekleri eklemeniz gerekir. memcache sürücü user/config/system.yml file. Bu seçenekler altında tanımlanabilircache: grubu.
cache:
...
...
memcache:
server:localhost
port: 8080
Redis Seçenekleri
Eğer kullanıyorsanız redis, daha sonra kullanarak bazı ekstra yapılandırma seçenekleri eklemeniz gerekir redis sürücü user/config/system.yml file. Bu seçenekler altında tanımlanabilircache: grubu.
cache:
...
...
redis:
server:localhost
port: 8080
Twig şablonu, twig sürücüsünü kullanarak kendi önbelleğe alma mekanizmasını kullanır. user/config/system.yml dosya.
twig:
cache: true
debug: true
auto_reload: true
autoescape: false
Gibi bazı seçenekleri vardır -
cache seçeneği, twig önbelleğe almayı true olarak ayarlayarak etkinleştirir.
debug seçeneği dal hata ayıklamasını etkinleştirir.
auto_reload seçeneği, değişiklikleri true olarak ayarlayarak yeniden yüklemek için kullanılır.
autoescape seçeneği, dal değişkenlerinden otomatik olarak çıkmak için kullanılır.
Önbelleğe Alma ve Olaylar
Önbelleğe alma etkinleştirildiğinde olaylar kullanılabilir. Bu, dışındaki tüm etkinlikler için etkinleştirilebilir:OnPageContentRaw, OnPageProcessed, OnPageContentProcessed, OnTwigPageVariables ve OnFolderProcessedEtkinlikler. Bu olaylar tüm sayfalarda ve klasörlerde kullanılabilir ve yalnızca olaylar işlenirken çalıştırılabilir. Bu olaylar, sayfa önbelleğe alındıktan sonra çalıştırılamaz.