Dostarczanie elementów zawartości, zasobów cyfrowych i serwisów powinno — w celu zwiększenia wydajności tych operacji i renderowania — w pełni opierać się na podręcznej pamięci przeglądarki osoby odwiedzającej.
Serwisy, motywy, elementy zawartości i zasoby cyfrowe są przechowywane przez określony czas w podręcznej pamięci przeglądarki osoby odwiedzającej. Gdy serwis, motyw, element zawartości lub zasób cyfrowy zostanie zaktualizowany, zostanie zmieniony klucz "cache-buster" w adresie URL, tak że przeglądarka musi pobrać nowy adres URL i uzyskać nowy element.
Klucz "cache" pomaga zarządzać użytkowaniem podręcznej pamięci przeglądarki, odwołując się tylko do aktualnych zasobów. Mimo że klucz "cache" jest zawarty w adresie URL, to jednak jest elementem logicznym, a nie — jak często ma to miejsce — lokalizacją fizyczną (folderem). Zmiana w kluczu "cache" nie wskazuje innej lokalizacji fizycznej zasobu; informuje jedynie serwer, że należy pobrać aktualną wersję zasobu.
Zasoby mogą być statyczne (np. pliki CSS, pliki JS i pliki obrazów) lub dynamiczne (np. dane, dane serwisu czy dane elementu zawartości). Istnieje pięć kategorii zasobów używanych do konstruowania serwisu:
Zasoby produktu — Zasoby stanowiące część produktu, które ulegają aktualizacji, gdy pojawi się nowa wersja produktu lub do starej wersji zostaną zastosowane poprawki.
Zasoby serwisu — Zasoby stanowiące część serwisu, takie jak structure.json
, dane stron oraz obrazy. Zasoby te są aktualizowane, gdy serwis jest publikowany. Kontroler jest opisany dalej.
Zasoby motywów — Zasoby stanowiące część motywów, takie jak układy, pliki CSS i obrazy. Zasoby te są aktualizowane, gdy motyw jest publikowany.
Zasoby składników — Zasoby stanowiące część składników niestandardowych. Do zasobów tych należą pliki HTML, JS i CSS oraz pliki obrazów używane w składniku. Zasoby te są aktualizowane, gdy składnik jest publikowany. Jeśli jeden składnik zostanie zmieniony i ponownie opublikowany, to klucz "cache" zmienia się dla wszystkich składników, ponieważ jest używany tylko jeden klucz dla wszystkich składników.
Zasoby CaaS — Zasoby obsługujące elementy zawartości i elementy cyfrowe. Są aktualizowane, gdy elementy zawartości są publikowane lub publikowane bądź gdy zmienia się miejsce docelowe gromadzenia.
W poniższych tematach jest opisane wykorzystywanie pamięci podręcznej (buforowanie) w trybie wykonawczym Oracle Content Management oraz dla konstruktora serwisów:
W trybie wykonawczym nagłówek Cache-Control dla Oracle Content Management jest ustawiany na 15 dni. Do adresu URL każdego z zasobów jest dodawany klucz "cache".
Dopóki URL nie ulegnie zmianie, przeglądarka będzie obsługiwać dany zasób z lokalnej pamięci podręcznej, o ile jest ona dostępna. Gdy zasób zostanie zaktualizowany, nastąpi aktualizacja klucza "cache" w adresie URL, co zmusza przeglądarkę do wysłania nowego żądania do serwera i zaktualizowania lokalnej pamięci podręcznej.
Kontroler zawierający klucze "cache" jest także przechowywany w pamięci podręcznej, przez 1 minutę. Wskutek tego zaktualizowane klucze "cache" nie będą widoczne przez czas sięgający 1 minuty.
W trybie wykonawczym serwer zwraca controller.html
z najnowszymi kluczami "cache" dla produktu, serwisu, motywu, składników i zasobów CaaS. Do pliku controller.html
jest dodawany skrypt z kluczami; na przykład:
<script type="text/javascript"> var SCSCacheKeys = { product: '123', site: '456', theme: '789', component: '012', caas: '345' }; </script>
Klucze te są używane przez controller.js
do konstruowania adresów URL podobnych do pokazanych w poniższej tabeli.
Typ zasobów | Przykłady |
---|---|
Zasoby produktu |
/sitePrefix/productCacheKey/_sitesclouddelivery/... /mySite/_cache_947d/_sitesclouddelivery/ |
Zasoby motywu |
/sitePrefix/themeCacheKey/_themesdelivery/themeName/... |
Zasoby składnika |
/sitePrefix/compCacheKey/_compdelivery/compName/... |
Zasoby serwisu |
/sitePrefix/siteCacheKey/content/... /sitePrefix/siteCacheKey/structure.json /sitePrefix/siteCacheKey/pages/100.json |
Zasoby CaaS |
RegularCaaSUrl?cacheKey=caasCacheKey |
Oracle Content Management, wstawiając w ten sposób klucze "cache" do adresów URL, może zmusić przeglądarkę do ładowania zaktualizowanych zasobów; jeśli zmieni URL, przeglądarka uzna, że ma do czynienia z nowym zasobem.
Uwaga:
W przypadku serwisów zabezpieczonych w pamięci podręcznej są przechowywane tylko zasoby produktu, motywów i składników. Nie jest natomiast buforowana zawartość serwisu ani zawartość CaaS.W konstruktorze serwisów zasoby statyczne są przechowywane w pamięci podręcznej przez 15 dni.
Gdy jest używany konstruktor serwisów, buforowanie odbywa się dla zasobów produktów, motywów i składników. (Nie obejmuje zasobów serwisów i CaaS.) Klucze "cache" motywów i składników są ponownie generowane podczas uruchamiania lub odświeżania konstruktora serwisów.
Jeśli do motywu lub składnika wprowadzono zmiany, które mają zostać uwzględnione w konstruktorze serwisów, należy odświeżyć konstruktor serwisów, naciskając klawisz F5.