Є думки, кешируєтся за допомогою основних механізмів кешування, або я повинен бути настройки кешування безпосередньо в кожній виставі?


23

Я бачу, що в кеш-пам'яті налаштування в кожному з моїх поглядів. Чи потрібно встановлювати їх або ж основні механізми кешування в / адміністратор / конфігурація / розвиток / продуктивність автоматично робити деякі з цих та цих «додаткових налаштувань» в уявленнях є, якщо я хочу, щоб змінити поведінку кешування за замовчуванням Drupal ядра?

введіть тут опис зображення


Мені цікаво саме це питання. Чи переважають параметри кешу, визначені для перегляду, параметрами кешування продуктивності Drupal Core? Логічно, я б вважав, що це так і буде, але це не обов'язково можна припустити.
Девід Чонка

Я почав нагороду за це, тому що я дійсно хотів би, щоб краще це зрозуміти.
Девід Чонка

Відповіді:


38

ЩО: Кешування основної продуктивності зберігає та обслуговує всю відтворену сторінку з ідентифікатором кешу URL-адреси. Кешування переглядів виходить за рамки цього, щоб кешувати лише вихідний вид.

ЧОМУ: Це чудово для користувачів, які ввійшли; інші блоки на сторінці можуть бути більш динамічними, але перегляд не повинен запускати запит щоразу для кожного користувача ... закінчується термін дії лише випадкового користувача, який генерує кеш сторінки.

НАЛАШТУВАННЯ: Дозволити "виведений результат" бути свіжішим, ніж запит, корисний для речей, як маркування вмісту як нового, інакше просто їх порівнюйте.

ВЕЛИЧА КАРТИНА: Drupal обслуговує сторінку динамічно, використовуючи сервер для створення сторінок у PHP та доступу до бази даних (або кеш-пам'яті). Це дозволяє отримувати приголомшливі функції та швидкість редактора вмісту ... але компроміс потрібно розуміти кешування та робити це правильно.

МОДУЛИ!

Там також прекрасні Перегляди Вмісту кеш - модуль , який очищає кеш переглядів при редагуванні контенту. Якщо ви хочете піти далі, ви можете також перевірити кеш-дії , я рекомендую Правила, щоб це налаштувати.

Крім того, Blockcache Alter дозволяє встановити параметри кешування «за роллю», сторінкою, користувачем тощо для кожного блоку на вашому сайті.

Крім того, можна додати менеджер сторінку і панелей . Це дозволяє робити цікаві речі , як установка кеш «на користувача», «в ролі», або цілий ряд інших дуже корисних налаштувань. Хоча я особисто уникаю панелей.

ДОКУМЕНТАЦІЯ: Для кешування та продуктивності взагалі перегляньте сторінку Drupal.org .


Відповідь на це питання дуже добре. Up-голосування. Я додав розділ про Менеджер сторінки та Панелі, і тепер відповідь може бути переважно повною.
Летаріон

Чи потрібно ввімкнути основну продуктивність "Блокування кешування", щоб кешування перегляду "Перегляд" працювало?
Девід Чонка

Дякуємо за те, що ви додали трохи інформації про "Менеджер сторінок / Панелі", тому що після додавання баунті я зрозумів, що мені також цікаво кешування міні-панелей. Мені було цікаво , якщо «кешування Блок» Core Performance переопределяет або повинен був бути включений для того , міні-груп «Прості кешування» , щоб бути ефективними.
Девід Csonka

1
Кешування блоку буде дійсно кешувати вихідний блок , незалежно від вашої думки кешування налаштувань ... такий же як в кеші сторінок. Якщо у вас є 12-годинний ресурс кеш-сторінки сторінки, кеш перегляду не має значення, оскільки ці сторінки не надаються знову, вони просто надходять із кеша.
doublejosh

1
На стороні наборот, якщо включити кешування основного блоку, Drupal буде вводити одні і той же умова кешування на всі мої блоки в протягом всього свого сайту, НЕ так? Оскільки керування основним блоком Drupal займає першочерговий пріоритет у налаштуваннях кешування Views Block? Це здається лише хорошим сценарієм, якщо у вас немає вмісту, який, можливо, потрібно буде постійно оновлювати.
Девід Чонка

4

Перегляди використовують API кеша Drupal, але він створює власний кеш, який не пов’язаний зі звичайним кешем сторінки Drupal / блок.

Перегляди кешують саме визначення уявлення разом з наданим самим поданням. Винесено подання може бути поміщена в кеш двома способами, або результат виконання запиту або фактичний HTML уявлення. Зазвичай ви хочете кешувати вихідний HTML, оскільки це найбільш ефективна ефективність. У деяких випадках, коли ви хочете змінити вихід на основі зареєстрованого користувача, кешування запиту також може бути досить ефективним.

Таблиці уявлення використовує для зберігання кешу є:

  • cache_views
  • cache_views_data

Отже, чи можу я вимкнути налаштування кешування блоку Drupal Core в адміністраторі / конфігурації / розробці / продуктивності, але ввімкнути певні кеші блоку відображення окремих файлів окремо, і все-таки ці кешовані блоки керування функціонують правильно?
Девід Csonka

1
@DavidCsonka Так , ви можете зробити це. Кешування блоку було б ефективніше, ніж кешування погляду, але лише невеликим запасом.
googletorp

Ах, це добре знати. Але, використовуючи лише параметри кешування Views, я дав би більш точний контроль над кешуванням блоку Views, правда? Якщо я замість цього використовую керування основним блоком, воно в основному накладає один набір параметрів кешування на кожен блок мого сайту? Правильно?
Девід Csonka

1
Переглядів кешування (блоку або сторінки) дозволяє контролювати кешування набору списку результатів. Кешування Блок не про повний вихід блоку. Так, кешування основного блоку - це налаштування на рівні сайту, але ви можете використовувати кешування блоку Alter, щоб змінити це дуже детально на блок.
doublejosh

3
@doublejosh У Drupal 7 ви можете визначити, як повинен керувати блок кеш, по всьому сайту, за роллю, на сторінку, користувач сторінки - це варіанти, на які я вважаю. Так як це кешування на більш високому рівні, це більш високу продуктивність ефективним.
googletorp

3

Зараз є цікавий модуль, який називається хуліганом кешу переглядів, який автоматично кешує всі представлення даних (результати запиту та результати), за винятком представлень із відкритими формами. Модуль також дозволяє вручну виключити види з кешування. Це робить можливим набір кешування для всіх видів ( за винятком тих , хто виключений) з центральної точки.


2

Drupal 7 забезпечує кешування сторінок, однак кешування сторінок працює тільки для анонімних користувачів, а не вид на кеш

Переглядів кешування однак працює як для анонімних і зареєстрованих користувачів

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.