Перейти к публикации

Вопрос о кешировании DLE


Рекомендованные сообщения

Вопрос о кешировании DLE

Возьмём за пример DLE 16.1, тк она актуальная.

Локальный кеш. (Хотя думаю это не важно)

 

При каких условиях чистится кеш, полностью или частично?

Когда полностью чистится, а когда частично?

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

 

Есть тут те кто погружались в вопрос? Давайте обсудим.

Изменено пользователем Uralbox
Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, Uralbox сказал:

При каких условиях чистится кеш, полностью или частично?

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

А именно глобально, когда чистится вообще все, это когда вы нажмете кнопку в админпанели "очистить кеш", это именно глобальная чистка вообще всего. Если ее не нажимать, то именно глобальной очистки не будет.

Ссылка на сообщение
Поделиться на других сайтах

@celsoft А при сохранении базы данных через админку (допустим каждые 6ч по крону) - разве не происходит полная очистка кеша?

Если пользователь выставил рейтинг публ - кеш рейтинга всех публ очищается?

А если добавлен комментарий к публикации, что очищается?

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Uralbox сказал:

А при сохранении базы данных через админку (допустим каждые 6ч по крону) - разве не происходит полная очистка кеша?

Под сохранением вы имеете ввиду бекап БД? Нет бекап БД не меняет данных, очистка кеша не производится.

3 часа назад, Uralbox сказал:

Если пользователь выставил рейтинг публ - кеш рейтинга всех публ очищается?

Есть два отдельных кеша, кеш публикаций при выводе и кеш счетчика в БД. Кеш счетчика в БД не будет очишаться, он синхронирузется по таймингу как описано в настройке в админпанели, где вы включаете его.

3 часа назад, Uralbox сказал:

А если добавлен комментарий к публикации, что очищается?

Кеш публикации и комментариев.

Ссылка на сообщение
Поделиться на других сайтах

При пакетном изменение автора в админке у публикаций, чистится весь кеш. Какие для этого есть аргументы так делать?

Ещё вопрос, немного не по теме, но косвенно касается этого.

У некоторых публикаций в полной новости тег related news не вывожу (он скрывается тегами not-news)

В таком случае происходит поиск для таких публ похожих новостей (делается запрос к бд) или нет?

Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Uralbox сказал:

При пакетном изменение автора в админке у публикаций, чистится весь кеш. Какие для этого есть аргументы так делать?

По вашему автор публикации не выводится на сайте у публикаций? И должно выводится старое имя? DLE кеширует страницы целиком со всеми новостями на ней. Это недостаточный аргумент по вашему?

9 часов назад, Uralbox сказал:

У некоторых публикаций в полной новости тег related news не вывожу (он скрывается тегами not-news)

В таком случае происходит поиск для таких публ похожих новостей (делается запрос к бд) или нет?

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

Ссылка на сообщение
Поделиться на других сайтах
Цитата

По вашему автор публикации не выводится на сайте у публикаций? 

Я не вывожу автора. Да и кеш чистится всех публ как понимаю без исключений, в независимости, пакетное изменение публ 3х шт или 30 000 шт

 

Цитата

Поиск новостей происходит в любом случае.

Хотелось бы чтобы другая логика использовалась.

Ссылка на сообщение
Поделиться на других сайтах
09.08.2023 в 11:32, Uralbox сказал:

Я не вывожу автора.

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

09.08.2023 в 11:32, Uralbox сказал:

Да и кеш чистится всех публ как понимаю без исключений, в независимости, пакетное изменение публ 3х шт или 30 000 шт

Да и выше я написал почему, потому что кешируются страницы целиком!!! а не публикации отдельно. Кеш нужен для снижения нагрузки, а не для создании статики из динамики. Кеш не может быть и не должен быть вечным. Если ваш сервер не справляется с динамиков вашего сайта, это не значит что проблема в кеше или он не оптимальный, это значит что ваше железо не справляется с той динамикой который обеспечивает ваш сайт согласно сложившимся условиям.

09.08.2023 в 11:32, Uralbox сказал:

Хотелось бы чтобы другая логика использовалась.

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

Ссылка на сообщение
Поделиться на других сайтах

Кеш живет несколько часов в сутки, и потом сбрасывается в 0 и заново постепенно создаётся и так по кругу. Разве это оптимально? Может сделать в админке возможность Администратору делать выбор как это должно работать? Каждый сайт использует по разному и у каждого этот кеш живёт поразному соответственно и его кпд разный (иногда отрицательный)

Ещё вопрос про краткое описание и полное. Появилась возможность откл неиспользуемое поле. В плане производительности, есть разница в какое поле добавлять текст? Текст один, и добавляется полностью.

Ссылка на сообщение
Поделиться на других сайтах
21 час назад, Uralbox сказал:

Кеш живет несколько часов в сутки, и потом сбрасывается в 0 и заново постепенно создаётся и так по кругу. Разве это оптимально?

Конечно. Я же сказал кеш не должен жить сутками. DLE это для создания динамических!!! сайтов а не статичных HTML страниц. Это не конструктор страниц. Отключайте все без исключения возможности скрипта в настройках скрипта и кеш не будет очищаться часто. А будет жить долго, но вы и динамику хотите и кеш на несколько дней, так не бывает. Ваш кеш живет ровно столько, сколько позволяют ему жить ваши же различные настройки возможностей скрипта в настройках скрипта. И поэтому именно для вашего сайта то как очищается кеш именно на вашем сайте, это самое оптимальное, чтобы и возможности все работали которые включили и кеширование было. Оптимальное время кеша это не статическая величина, это зависимая величина от возможностей и как этими возможностями пользуются и у каждого сайта она всегда разная. 

21 час назад, Uralbox сказал:

Ещё вопрос про краткое описание и полное. Появилась возможность откл неиспользуемое поле. В плане производительности, есть разница в какое поле добавлять текст? Текст один, и добавляется полностью.

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

Ссылка на сообщение
Поделиться на других сайтах

Зачем же отключать всё без исключения, если этим можно пользоваться и кешировать. А то что оно не будет будет обновлятся в режиме реального времени, то это не критично. Не стоит делить возможности на black/white

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Uralbox сказал:

Зачем же отключать всё без исключения, если этим можно пользоваться и кешировать.

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

2 часа назад, Uralbox сказал:

то это не критично

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

07.08.2023 в 00:47, Uralbox сказал:

Видел сообщения на разных ресурсах от пользователей о неэффективности его работы

И у вас такое убеждение, только не значит что оно верное, или чем то действительно обоснованное. А обоснование "для меня не критично видеть не актуальное" не обоснование. Если не критично, кешируйте серверным кешированием принудительно. Тогда DLE вообще не будет запускаться, и это будет самая супер быстрое работа сервера, быстрее не существует в природе даже. Только помимо вас для которого это не важно, существует огромное количество пользователей скрипта DLE, для которых это очень и очень даже критично. И мы согласны с ними. А мнение человека о том что ему что то не важно, не критично, и не нужно, не делает работу кеша неэффективной и не оптимальной.

07.08.2023 в 00:47, Uralbox сказал:

Есть тут те кто погружались в вопрос? Давайте обсудим.

В DLE всегда был и будет максимальный приоритет это быстродействие и низкая нагрузка. Но это не значит что при этом должно быть унылое качество работы. По нашему мнению кеш в DLE очень даже оптимален чтобы обеспечить и снижение нагрузки и обеспечить качественную работу при этом. Если вы считаете что что то можно улучшить, то предлагайте именно конструктивные и объективные предложения, а не по принципу "я это не вывожу, мне это не важно и не критично". Думать нужно не только о себе, а о всех, потому что DLE это коробочное решение для большого количества людей с очень и очень разными запросами, а не просто для вашего одного персонального сайта. В противном случае это уже не обсуждение и дискутирование, а навязывание каких то собственных пожеланий, потому что вам что то не нужно, что то не важно и т.д. Такие обсуждения лишены какого либо смысла и лишь пустая трата времени.

Ссылка на сообщение
Поделиться на других сайтах

смысл в кешировании например {custom cache="1d" (кэш один день) немного есть. 

допустим можно вывести похожие новости или какой то слайдер с новостями которые особо не нуждаются в каких то изменениях (лайк, комент). 

зачем их очищать. пусть сидят себе в кеше допустим сутки. например у вас похожие новости никогда почти не меняются. а кеш их очищает

Ссылка на сообщение
Поделиться на других сайтах
12 часов назад, crafic сказал:

смысл в кешировании например {custom cache="1d" (кэш один день) немного есть. 

допустим можно вывести похожие новости или какой то слайдер с новостями которые особо не нуждаются в каких то изменениях (лайк, комент). 

зачем их очищать. пусть сидят себе в кеше допустим сутки. например у вас похожие новости никогда почти не меняются. а кеш их очищает

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

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...