Cache, inaczej pamięć podręczna, jest elementem oprogramowania lub sprzętu przechowującym dane w taki sposób, aby w przyszłości mogły być one dostarczane szybciej. Mogą być one wynikiem wcześniejszego przetwarzania danych lub ich kopią przechowywaną w innym miejscu. Buforowanie odbywające się za pośrednictwem pamięci podręcznej wpływa pozytywnie na przepustowość oraz opóźnienia.
Czym jest cache?
Jak już zostało wspomniane, pamięć podręczna zajmuje się przechowywaniem danych w środowisku lokalnym. Pozwala ona znacząco przyspieszyć proces otwierania strony internetowej, bez względu na szybkość łącza internetowego. Gdyby nie cache, w momencie, w którym użytkownik wchodziłby na witrynę, urządzenie z którego korzysta musiałoby pobierać i odczytywać dane, przez co czas jej otwierania się byłby o wiele dłuższy. Dzięki pamięci podręcznej żądania są szybciej obsługiwane. Przechowywane w niej informacje są dzielone automatycznie pod kątem wykorzystania. Wyróżnia się tu czasowe, czyli do wielokrotnego wykorzystywania oraz przestrzenne, które informują mechanizm o tym, iż istnieje duża szansa na użycie sąsiadujących, powiązanych z nim obiektów.
Jakie są rodzaje pamięci podręcznej?
Wyróżnia się trzy poziomy pamięci podręcznej. Każdy z nich ma nieco inne zastosowanie i w odmienny sposób wpływa na funkcjonowanie urządzeń. Są to:
Cache L1 — poziom pamięci podręcznej odnoszący się do danych wykorzystywanych aktualnie przez procesor. Jest ona ściśle powiązana z tym podzespołem.
Cache L2 — na tym poziomie znajdują się dane do przechowywania w najbliższym czasie. Mechanizm dokonuje tu oceny na podstawie danych płynących z pamięci cache L1 oraz L3. Pamięć tego typu jest umieszczana na płytach głównych urządzeń elektronicznych.
Cache L3 — pamięć charakteryzująca się największą pojemnością. Gromadzi ona dane, a następnie przerzuca je do L2. W przypadku urządzeń wielordzeniowych odpowiada także za synchronizację ich działania, pomagając osiągnąć możliwie jak największą wydajność.
Na każdym z trzech wspomnianych poziomów, pamięć cache ma bardzo duży wpływ na funkcjonowanie pamięci RAM. Co za tym idzie, wpływa jednocześnie na działanie wszystkich podzespołów danego urządzenia. Aktualnie najczęściej do czynienia mamy z pamięcią dwupoziomową.
Zastosowanie pamięci cache na stronach internetowych
Wyróżnia się pamięć cache dedykowaną podzespołom i oprogramowaniu. Do drugiej kategorii zalicza się między innymi pamięć podręczna przeglądarki, czyli wydzielony obszar dysku twardego, gdzie zapisuje ona dane pobierane ze stron internetowych, takie jak ikony, grafiki czy arkusze stylów. Miejsce to jest określane mianem „schowka przeglądarki”. Dane zapamiętane przez przeglądarkę można usuwać między innymi przy pomocy dedykowanych programów służących do optymalizacji i czyszczenia systemu, takich jak na przykład CCleaner. Po zakończeniu takiej operacji, przeglądarka zaczyna pobierać je ponownie, co negatywnie wpływa na szybkość ładowania się strony internetowej. Do usuwania zapamiętanych danych służy także specjalna funkcja znajdująca się w jej ustawieniach.
Warto wspomnieć tutaj także o współdzielonej pamięci cache, tak zwanej „shared cache”, która znajduje zastosowanie w środowiskach firmowych. Komunikacja przebiega tutaj między serwerem strony i firmy. Wczytywane są wyłącznie te dane, które nie znajdują się na serwerze przedsiębiorstwa. Właściciel strony internetowej może zdecydować, jak długo pamięć cache będzie się znajdowała w schowku przeglądarki. Po wskazanym przez niego czasie, dane zostaną usunięte. Aby określić ten okres, należy się posłużyć nagłówkami cache — control i expres, które znajdują się w pliku systemowym .htaccess. Korzystanie z pamięci podręcznej przyczynia się do znacznie szybszego wczytywania się stron internetowych, co przekłada się na większy komfort użytkowania przeglądarki. Cache znajduje zastosowanie w szczególności w przypadku witryn, na których znajduje się dużo elementów stałych oraz zmiennych (mowa tu między innymi o serwisach informacyjnych czy sklepach internetowych).