Różnica między standardowymi opcjami pamięci podręcznej

12

Joomla! mieć 3 różne sposoby buforowania:

  • „Konserwatywne buforowanie” (w konfiguracji globalnej)
  • „Progresywne buforowanie” (w konfiguracji globalnej)
  • wtyczka „System - pamięć podręczna”

Mam następujące pytania:

  • Jakie są różnice?
  • Kiedy korzystam z której opcji?
  • Czy powinienem włączyć wtyczkę pamięci podręcznej, kiedy już włączyłem opcję w konfiguracji?
  • Jaki właściwy sposób skonfigurować domyślny system pamięci podręcznej?
Fedik
źródło

Odpowiedzi:

5

Oprócz odpowiedzi Shyama ...

W Global Configuration-> Cache...

  • Konserwatywne buforowanie to pamięć podręczna generowana dla każdego widoku komponentu / modułu
  • Progresywne buforowanie to pamięć podręczna generowana dla każdego widoku komponentu / modułu indywidualnie dla każdego użytkownika

Jest to pamięć podręczna widoków na poziomie rozszerzenia. Musi zostać zaimplementowany przez programistę rozszerzeń, aby mieć jakikolwiek efekt.

Uwaga: zalogowani użytkownicy nigdy nie zobaczą buforowanych treści za pomocą tych środków.

Można przesłonić buforowanie poszczególnych modułów, jeśli włączone jest „buforowanie konserwatywne” poprzez wyłączenie buforowania w zaawansowanych opcjach modułu. NIE MOŻESZ zastąpić buforowania modułów dla poszczególnych modułów, jeśli ustawione jest „Progresywne buforowanie”.

System - Cache Wtyczka generuje strona składy każdej strony w całości /cache.

W większości przypadków wystarczy włączenie wtyczki System - Cache . Jeśli chcesz buforować tylko określone moduły / komponenty (które mają zaimplementowane buforowanie), wyłącz wtyczkę i włącz Konserwatywne buforowanie w konfiguracji globalnej. Następnie można ustawić wyjątki, wyłączając buforowanie w zaawansowanych opcjach modułu.

Należy pamiętać, że każde buforowanie stanowi równowagę między czasem i przestrzenią - pełne buforowanie stron zmniejszy obciążenie bazy danych, a tym samym czas ładowania strony, ale zwiększy wykorzystanie miejsca na dysku.

Można znaleźć dalsze analizy i odniesienia systemu buforowania tutaj , jak również dokumenty Joomla cache dla administratorów i ten doskonały artykuł szczegółowo różne opcje i zastosowanie zastrzeżenia.

kodowania
źródło
Ale używam progresywnej pamięci podręcznej i szanuje ustawienia pamięci podręcznej modułu, więc myślę, że powinieneś spróbować i poprawić swoją odpowiedź.
jackJoe
Jesteś pewny? Każda witryna, którą sprawdziłem, Progressive cachingzastąpi wszelkie ustawienia na poziomie modułu (szczególnie trzecią tabelę w sekcji „Raw Results” na stronie inmotionhosting.com/support/edu/joomla-25/caching/… ). Spróbuję dziś przetestować to na czystej instalacji, aby zweryfikować w ten czy inny sposób.
codinghands
1
about: „Konserwatywne buforowanie plus włączenie wtyczki System - Cache jest wystarczające” - czy to ma sens? ponieważ, jak wyjaśniłeś: wtyczka robi pamięć podręczną dla całej strony, więc (jak rozumiem) w tym przypadku Joomla! nie uruchamiaj rozszerzenia, więc konserwatywne buforowanie .. czy rozumiem coś złego?
Fedik
1
Właśnie próbowałem, aw niektórych sytuacjach działa, a w innych nie! jeśli umieścisz moduł w artykule (np. według jego pozycji), respektuje ustawienie braku pamięci podręcznej, ale w normalnej pozycji modułu ignoruje to! Przysięgałbym, że zadziałało w przypadku normalnego modułu, ale po prostu spróbowałem go ponownie i nie działa.
jackJoe
@Fedik Masz rację, nieporozumienie z mojej strony. Teraz zaktualizowałem moją odpowiedź.
codinghands
3
  1. Różnica między buforowaniem -

    Konserwatywne buforowanie jest standardowym rodzajem buforowania. Oto jak to działa:

    Odwiedzający odwiedza stronę w Twojej witrynie.

    • Joomla sprawdza, czy w katalogu pamięci podręcznej znajduje się nie wygasła wersja tej strony.
    • Jeśli strona w pamięci podręcznej istnieje (i nie wygasła), Joomla poda ją odwiedzającemu
    • w przeciwnym razie tworzona jest buforowana wersja strony i ta buforowana wersja będzie udostępniana odwiedzającemu i każdemu następnemu odwiedzającemu, o ile (przez „to” rozumiemy, że strona) nie wygasła.

    Powyższy scenariusz jest typowy i właśnie w ten sposób większość programistów implementuje buforowanie.

    Progresywne buforowanie działa w następujący sposób:

    • Odwiedzający odwiedza stronę w Twojej witrynie.
    • Joomla sprawdza, czy dla tej osoby istnieje buforowana wersja tej strony, która jeszcze nie wygasła.
    • Jeśli ta strona w pamięci podręcznej istnieje, zostanie udostępniona odwiedzającemu, w przeciwnym razie Joomla utworzy stronę w pamięci podręcznej dla tego konkretnego użytkownika, a następnie mu ją udostępni.
    • Jeśli inny użytkownik (który nigdy nie był na tej stronie) odwiedzi tę stronę, Joomla nie będzie wyświetlać strony poprzedniej osoby w pamięci podręcznej, zamiast tego utworzy wersję tej strony w pamięci podręcznej specjalnie dla tego użytkownika, a następnie udostępni ją mu.

    Jak widać, buforowanie progresywne zapewnia jedynie poprawę wydajności

    • jeśli ten sam użytkownik odwiedzi tę samą stronę w okresie istnienia buforowanej wersji strony.
    • W większości scenariuszy progresywne buforowanie skutkuje ogromnym spadkiem wydajności, który jest znacznie gorszy niż wyłączenie pamięci podręcznej, po prostu dlatego, że dla prawie każdej wizyty Joomla musi przetworzyć żądanie, utworzyć buforowaną wersję strony, a następnie podać stronę odwiedzającemu (zamiast po prostu przetwarzać żądanie i wyświetlać stronę w scenariuszu, w którym pamięć podręczna jest wyłączona).
    • Aha, i nie zapomnij o wszystkich plikach pamięci podręcznej generowanych przez Joomla - możesz sobie tylko wyobrazić, ile z tych plików będziesz mieć w folderze pamięci podręcznej, jeśli masz witrynę z wiadomościami o dużym ruchu (która ma wiele stron).

    Teraz możesz się zastanawiać, w jakich okolicznościach przydatne jest progresywne buforowanie? Wyobraź sobie, że masz witrynę wideo (podobną do youtube). Chcesz pokazać każdemu odwiedzającemu dostosowane strony na podstawie jego lokalizacji i / lub ustawień przeglądarki i / lub zainstalowanych wtyczek. Tak więc dla każdej strony ładowanej przez użytkowników wykorzystujesz te informacje, aby wygenerować dostosowaną wersję tej strony i buforujesz ją. Jeśli odwiedzający ponownie odwiedzi tę samą stronę, Joomla nie musi ponownie wykonywać pracy, aby wygenerować dostosowaną stronę.

    Oczywiście istnieje wiele scenariuszy, w których progresywne buforowanie jest naprawdę przydatne, ale naszym zdaniem progresywne buforowanie powinno być brane pod uwagę tylko wtedy, gdy strona internetowa odwiedza wielu użytkowników i jeśli ci odwiedzający są w większości osobami powtarzającymi się. Używanie go w innych przypadkach spowoduje znaczny spadek wydajności witryny. Ref: Przeczytaj dogłębnie buforowanie Joomla

  2. Zalecany jest konserwatywny.

  3. Wtyczka pamięci podręcznej zapewnia pełną pamięć podręczną strony, gdy jest włączona.
Shyam
źródło
3
Czy możesz edytować tę odpowiedź, aby wstępnie sformatowane bloki były zamiast nich cytatami? Zwróć także uwagę na oryginalne źródło tych informacji ( itoctopus.com/... i cytowane w stackoverflow.com/questions/12739297/... ). Ponadto zaleca się buforowanie progresywne, nawet jeśli jest to wspomniane w artykule, jak tylko w przypadku bardzo specyficznych przypadków użycia ...?
codinghands
nie bardzo jasne, powiedziałeś, że: Konserwatywny / Progresywny „sprawdza, czy istnieje wersja buforowana tej strony” oraz o wtyczce „Wtyczka pamięci podręcznej zapewnia pełną pamięć podręczną strony” .. więc wszystkie te opcje i wtyczka buforują dane wyjściowe całej strony lub?
Fedik
ok, widzę inną odpowiedź;)
Fedik
Zaktualizowana odpowiedź # 2 Zmieniono na konserwatywną.
Shyam,