Development

Documentation/pl_PL/book/1.0/12-Caching

You must first sign up to be able to contribute.

Oryginalny tekst: http://www.symfony-project.com/book/trunk/12-Caching [EN]

WERSJA ROBOCZA

Rozdział 12 - Caching

Jednym ze sposobów na przyspieszenie aplikacji jest przechowywanie fragmentów wygenerowanego kodu HTM lub nawet całych stron dla późniejszy wywołań. Ta technika jest znana jako caching (czyt. keszin) i może być realizowana zarówno po stronie serwera jak i klienta.

Symfony dostarcza elastycznego systemu cache'owania po stronie serwera. Umożliwia on zapisywania do pliku całych odpowiedzi serwera, rezultatów wywołania akcji, partiali oraz fragmentów szablonów, poprzez intuicyjną konfigurację opartą na plikach YAML. Kiedy źródłowe dane ulegną zmianie, możesz w łatwy sposób wyczyścić wybrane partie cache'u poprzez wiersz poleceń lub specjalne metody akcji. Symfony, wprowadza także łatwy sposób kontrolowania cache'u po stronie klienta przez nagłówki HTTP 1.1. Ten rozdział poświęcony jest wszystkim tym aspektom a także da Ci kilka wskazówek odnośnie monitorowania usprawnień jakie cache'owanie może wnieść w Twoich aplikacjach.

Cache'owania odpowiedzi serwera

Zasada działania systemu cache'owania HTML jest prosta: Część lub cały kod HTML wysłany do użytkownika w odpowiedzi serwera może by ponownie wykorzystany w podobnych odpowiedziach. Kod HTML jest przechowywany w specjalnym miejscu (folder cache/ w symfony), który aplikacja będzie przeszukiwała przed wykonaniem akcji. Jeśli znaleziono odpowiedni plik cache, jest on wysyłany do użytkownika bez wykonania akcji. Takie rozwiązanie znacząco przyspiesza cały proces. Jeśli plik cache nie został odnaleziony, akcja wykonywana jest w standardowy sposób a jej wynik (kod HTML) jest przechowywany w katalogu cache w celu wykorzystania w przyszłych żądaniach.

System cache jest domyślnie wyłączony dla stron które zawierają dynamiczną treść. Zadaniem administratora jest aktywowanie go w celu zwiększenia wydajności aplikacji.

Symfony posiada trzy różne typy cache'owania HTML'a: - Cache'owanie akcji (z lub bez layout'u) - Cache'owanie pariali, komponentu lub slotu - Cache'owanie fragmentu szablonu

Pierwsze dwa typy są konfigurowane poprzez plik YAML. Cache'owanie fragmentu szablonu jest wykonywane z poziomu szablonu poprzez helper'y.