Grav - wydajność i buforowanie
W tym rozdziale zrozumiemy koncepcje wydajności i buforowania w Grav.
Wydajność
Termin wydajność odnosi się do wydajności systemu w taki sposób, że może on obsłużyć większe obciążenie systemu i zmodyfikować system, aby obsługiwał większe obciążenie.
Rozważ następujące punkty dotyczące wydajności Grav -
Aby mieć lepszą wydajność Grav'a, możesz użyć PHP opcache i usercache. Opcache działa dobrze z PHP 5.4, a usercache działa szybciej z PHP 5.5, PHP 5.6 i Zend opcache.
Plik SSD(Solid State Drive), który wykorzystuje pamięć flash i nie ma ruchomych części. Czasami pamięć podręczna będzie przechowywana w pamięci podręcznej użytkownika lub jako pliki. Dzięki temu dyski SSD mogą zapewnić lepszą wydajność.
Maszyny wirtualne to najlepszy sposób na hosting dostawców w technologii chmury obliczeniowej. Możesz określić zasoby bez interakcji z fizycznym sprzętem.Native hostingjest szybszy niż maszyna wirtualna. Grav działa lepiej na maszynach wirtualnych, ale dla optymalnej wydajności można skorzystać z opcji hostingu natywnego.
Grav ma faster memoryw którym jego pamięć podręczna używa ciężkiej pamięci, która zapewnia lepszą wydajność na serwerze. W porównaniu do innych platform zużywa mniej pamięci.
Grav używa shared hostingna udostępnionym serwerze, aby udostępnić rzeczy. Udostępnianie hostingu jest dostępne w niskiej cenie i czasami może prowadzić do spowolnienia działania serwera.
Procesory wielordzeniowe służą do szybszej obsługi wielu zadań. Zaawansowane procesory są lepsze od tych procesorów, co pomaga użytkownikowi w wykonaniu zadania.
Buforowanie
Ogólnie rzecz biorąc, pamięć podręczna to dane przechowywane w pamięci podręcznej. Mechanizm pamięci podręcznej sprawia, że Grav jest szybszy, w którym przeglądarka może pobierać pliki z pamięci podręcznej zamiast z oryginalnego serwera, oszczędzając czas i dodatkowy ruch sieciowy.
Grav używa biblioteki Doctrine Cache, która obsługuje następujące -
Auto (domyślne) - automatycznie używa opcji domyślnej.
Plik - określa pliki pamięci podręcznej obecne w cache/ teczka.
APC
XCache
Memcache
Redis
WinCache
Domyślnie Grav używa ustawienia automatycznego. Spróbuje użyć APC, następnie WinCache, XCache i na koniec używa File.
Typy buforowania
Istnieje 5 rodzajów buforowania -
Buforowanie konfiguracji YAML w PHP.
Buforowanie Core Grav dla obiektów strony.
Buforowanie Twig plików szablonów jako klas PHP.
Buforowanie obrazu dla zasobów multimedialnych.
Buforowanie zasobów CSS i jQuery z potokowaniem.
Buforowanie konfiguracji YAML przechowywanej w pliku /cacheteczka. Buforowanie obrazów przechowuje swoje obrazy w/imagesteczka. Opcja konfiguracji dla podstawowego buforowania Grav-a jest przechowywana wuser/config/system.yml plik, jak pokazano poniżej -
cache:
enabled: true
check:
method: file
driver: auto
prefix: 'g'
Plik enabled Opcja włącza buforowanie, ustawiając ją na true.
Plik method opcja sprawdza aktualizacje na stronach, takich jak pliki lub folder.
Plik driver opcja określa różne typy opcji buforowania, takie jak Auto, File, APC, XCache, Memcache, Redis lub WinCache.
Plik prefix Opcja definiuje ciąg prefiksu pamięci podręcznej.
Opcje pamięci podręcznej
Jeśli używasz memcached server, musisz dodać kilka dodatkowych opcji konfiguracyjnych przy użyciu memcache kierowca w user/config/system.yml file. Te opcje można zdefiniować wcache: Grupa.
cache:
...
...
memcache:
server:localhost
port: 8080
Opcje Redis
Jeśli używasz redis, musisz dodać kilka dodatkowych opcji konfiguracyjnych za pomocą redis kierowca w user/config/system.yml file. Te opcje można zdefiniować wcache: Grupa.
cache:
...
...
redis:
server:localhost
port: 8080
Szablon Twig wykorzystuje własny mechanizm buforowania, używając sterownika twig w user/config/system.yml plik.
twig:
cache: true
debug: true
auto_reload: true
autoescape: false
Ma kilka opcji, takich jak -
cache Opcja włącza buforowanie gałązki, ustawiając ją na true.
debug opcja włącza debugowanie gałązki.
auto_reload Opcja służy do przeładowania zmian przez ustawienie jej na true.
autoescape opcja jest używana do automatycznego zmiany znaczenia zmiennych twig.
Buforowanie i zdarzenia
Zdarzenia mogą być używane, gdy jest włączone buforowanie. Można to włączyć dla wszystkich wydarzeń z wyjątkiemOnPageContentRaw, OnPageProcessed, OnPageContentProcessed, OnTwigPageVariables i OnFolderProcessedwydarzenia. Te zdarzenia mogą być używane na wszystkich stronach i w folderach i mogą być uruchamiane tylko podczas przetwarzania zdarzeń. Tych zdarzeń nie można uruchomić po zbuforowaniu strony.