✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

Понимание кэширования в WordPress, часть 3

5

В двух предыдущих постах я рассказал об основах кеширования и о том, как кеширование работает в WordPress, по крайней мере, в какой-то степени.

Понимание кэширования в WordPress, часть 3

Но помните, что эта серия была написана по электронной почте от кого-то, кто подумал, что я мог бы лучше объяснить, как переходные процессы и кэширование работают в WordPress и почему важно понимать, как все работает в тандеме друг с другом.

Понимание кэширования в WordPress, часть 3

Итак, в этом посте я постараюсь собрать все воедино и рассказать о том, как Transients API работает в сочетании с MySQL, почему важно понимать взаимосвязь и как справляться с этим в будущем.

Как работают переходы в WordPress?

Как работают переходные процессы

Во-первых, согласно Кодексу, транзиенты работают так:

На этой странице содержится техническая документация WordPress Transients API, которая предлагает простой и стандартизированный способ временного хранения кэшированных данных в базе данных путем присвоения им пользовательского имени и периода времени, по истечении которого срок их действия истечет и они будут удалены.

Transients API через WordPress Codex

Идея, лежащая в основе этого, кажется достаточно простой, не так ли?

  1. Вы сохраняете вариант в базу данных,
  2. Установите время, как долго он должен существовать,
  3. Затем он хранится в течение этого времени
  4. И, если запрашивается после истечения срока действия, извлекается и возвращается в свое переходное состояние.

Так где же путаница?

Как упоминалось в первом посте, мне не было ясно, как долго будет доступна временная информация. Это не минимальное время, в течение которого данные будут доступны, а максимальное.

Это означает, что если вы сделаете что-то доступным в течение дня, оно будет доступно в течение дня. Не меньше; больше не надо. И после того, как это время истечет, его нужно будет воссоздать в переходном состоянии еще раз.

По крайней мере, за этим стоит общепринятое мнение. Это не так, но это еще не все. Однако здесь все становится немного более техническим.

Какую роль играет MySQL?

По мере развития WordPress, хостинга и других технологий базовые базы данных, лежащие в основе приложения, также изменились. Это не хорошо и не плохо (хотя, возможно, мы могли бы утверждать, что это хорошо в будущем посте).

Но это может помочь объяснить, почему переходные процессы работают так, как они работают, учитывая стек, с которым мы привыкли работать, и почему они могут работать не так, как ожидалось, без систем баз данных.

Если вы решите использовать MySQL в качестве базы данных для своей установки WordPress, что, осмелюсь сказать, делает большинство людей, то информация, которая находится в таблице параметров (где также хранятся переходные процессы), то Transients API будет работать как изложено выше.

Но что происходит, когда вы вводите другие формы кэширования, такие как кэширование объектов с помощью программного обеспечения, такого как Memcached или Redis, и т. д.?

Понимание кэширования в WordPress, часть 3

В этом случае данные могут быть недоступны, как вы ожидаете. Короче говоря, программа кэширования может отбрасывать информацию, которая запрашивается не так часто, как другую информацию. То есть, он дает уровень приоритета информации, которая запрашивается чаще.

Движение вперед

Когда вы принимаете во внимание все вышеперечисленное, вы смотрите на несколько вещей:

  1. API переходов,
  2. база данных,
  3. сторонняя система кэширования.

Если у вас есть Transients API и стандартная база данных, все будет работать так, как вы ожидаете.

Но если вы внедрите стороннюю систему кэширования, результат может быть другим. В частности, все может и не будет работать так, как вы ожидаете.

То есть сторонняя система кэширования может игнорировать любую информацию, которую она хочет удалить, всякий раз, когда она считает, что ее нужно удалить. Это означает, что все, что, по вашему мнению, может быть доступно в кеше, там не будет.

В конечном счете, лучший совет, который я могу дать, таков:

  1. Если вы используете MySQL и Transients API, все будет работать, как описано в Кодексе.
  2. Если, с другой стороны, вы используете другую систему кэширования, то важно понимать, как она работает и как вы можете написать для нее код, чтобы она работала так, как вам хотелось бы.

И с этим больше нечего добавить к этому учебнику для понимания кэширования в WordPress.

Источник записи: tommcfarlin.com

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее