MC_KoT

Рейтинг
48
Регистрация
06.11.2011

Спасибо за ответ.

В том то и дело, что использую плагины, которые вы упомянули, но они больше не подходят для Новотеки (раньше всё было ок). Написал в тех поддержку новотеки -- они ответили, что "При попытке забрать вашу ленту мы получаем ошибку HTTP code: http://prntscr.com/9onutx Вам нужно разрешить нашему роботу забирать вашу RSS-ленту. Наш робот использует User-Agent "libwww-perl.XXXX", где XXXX - это число, которое может меняться."

Поэтому возник вопрос, кто знает какой плагин точно подойдёт под Новотеку?

Странно, у меня в настройках нету неподтвержденных сайтов.

также не могу понять что это

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

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

Это значит, что все сервисы врут и кроме ботов они никого нагнать не смогут?

О каком кэшировании речь?
Картинки - надолго... Страницы - на усмотрение... Блоки (а-ля "последние новости") - по мере обновления.

Идёт речь о кешировании страницы в целом. К сожалению, невозможно сделать кэшерирования отдельных блоков, например, "последние новости", либо кэшируется страница целиком, либо не кэшируется ничего. Если я ошибся, буду благодарен вашему совету по плагину, который позволит на CMS Wordpress сделать кэширование отдельных блоков. Насколько мне известно, это сделать невозможно

Не кэшировать страницы у пользователя. "Кэшировать" на сервере.

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

Калькулятор не подводит?

прошу прощения, не указал, что это с учётом 8-часового рабочего дня

Исходя из того, что образование кэша тоже определённая нагрузка, правильно ли я понимаю, что если на портале очень много статей и заходят, в основном, на новые страницы, то на страницы, которым, к примеру, больше месяца и на которые приходится по 5-10 посещений в месяц, можно смело выключать кэширование? То есть оставляьт его только для страниц, которые созданы не позже месяца назад? Будет ли это оправдано?

BrimStone:
Как работает кеширование.
Без кеширования. Пользователь открывает сайт, начинает генерироваться страница: выполняются функции PHP, запросы к БД и т.д. В случае с WP, да и почти с любой CMS это сотни разных операций, на выполнение которых требуется время и ресурсы.

Плагин кеширования в тот момент, когда страница генерируется, создает ее HTML-копию.
Для того, чтобы показывать пользователю HTML-страницу нужна 1 операция, а не сотни.

Реальный пример:
Quick Cache file built for (xxx_ru) in 0.35799 seconds
Cache file served for (xxx_ru) in 0.00074 seconds
Разница в 483 раза. :)

Если мы зададим время кеширования 1 минута, то вся эта нагрузка будет создаваться раз в минуту (в случае если страница посещается так часто, конечно).
10 минут - значит, раз в 10 минут.
24 часа - раз в 24 часа.

Соответственно, чем большее время кеширования Вы зададите, тем сильнее снизится нагрузка на сервер. Если задать 30 дней, то страница будет создана 1 раз и многократно будет отдаваться ее сохраненная копия.



Вот тут нам приходится идти на компромисс между обновлением информации по всему сайту и снижением нагрузки.

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

Если же у Вас обычный блог, в котором 90% посещений приходится на главную страницу и самый свежий пост, в котором в сайдбаре все и так актуально, то время кеширования можно выставить и в месяц.
Ну увидят 10% посетителей не самый свежий сайдбар. Ну и что? Он же не будет пустым, им все равно будет, чем заинтересоваться. :)

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

---------- Добавлено 02.11.2014 в 11:15 ----------

Quick Cache file built for (xxx_ru) in 0.35799 seconds
Cache file served for (xxx_ru) in 0.00074 seconds

Еще немного по реальным цифрам. Возьмем сферическую страницу в вакууме, которую посещают стабильно 10 раз в минуту.

Промежуток расчетов - 1 час. Т.е. всего будет 60*10 = 600 посещений страницы за час.

Время кеширования 1 час:
Мы потратили 0.35799 1 раз на создание копии в кеше, и 599 раз по 0.00074 секунды, чтобы показывать закешированную копию.
Итого: 0.80125 секунды.

Время кеширования 10 минут:
Мы потратили 0.35799 6 раз на создание копии в кеше, и 594 раза по 0.00074 секунды, чтобы показывать закешированную копию.
Итого: 2.14794 + 0.43956 = 2.5875 секунды.

Время кеширования 1 минута:
Мы потратили 0.35799 60 раз на создание копии в кеше, и 540 раз по 0.00074 секунды, чтобы показывать закешированную копию.
Итого: 21.4794 + 0.3996 = 21.879 секунды.

Без кеширования:
0.35799 600 раз, ибо кеша нет.
Итого: 214.794 секунд.


Расчеты, безусловно, очень грубые. Как заметил SeVlad, у кеширующего плагина есть свои накладные расходы. Даже, чтобы отдать закешированную страницу, он должен проверить есть ли уже эта копия. А он тоже написан на PHP и требует некоторых ресурсов.
Если сайт посещают 2 раза в день, а время кеширования 1 минута, то на создание копий в кеше будет уходить больше ресурсов, чем без кеша вообще.
Но общее понимание должно появиться. :)

Спасибо большое за подробное объяснение.

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

BrimStone:
Боюсь, что со временем кеширования Вам придется определиться самостоятельно.
По большей части это зависит от 2 параметров:
1. Насколько сильно проект грузит сервер. Если проблем с нагрузкой нет, можно выставить хоть 10 минут. Если есть, то плясать уже придется от нее.
2. Смотря сколько всего и где у Вас обновляется при публикации новой записи и насколько это обновление критично для посетителей. На одном из сайтов у меня 1 минута стоит. Потому что там постоянно что-то обновляется. И даже в этом случае при высокой посещаемости смысл в кешировании есть.

Может быть вообще стоит посмотреть на плагин, который умеет очищать весь кеш при публикации новой записи. В WP Super Cache, по-моему, такое есть. Но могу ошибаться.

1. Правильно ли я понял, что чем больше проект грузит сервер, тем выше должно быть время кеширования? К примеру, в каких случаях делается срок кеширования на 24 часа, а в каких на 10 минут? Просто разниза колосальная. Сейчас стоит 24 часа. Не очень ли много?

2. Обновляется информация в сайдбаре -- сбоку каждой записи, при появлении новой записи добавляются ссылки на новые записи

BrimStone:
Большинство плагинов кеширования для WP создают статические HTML страницы, чтобы впоследствии отдавать их пользователю. Это гораздо проще, т.к. не надо обрабатывать функции PHP, делать запросы к Базе Данных и т.д.

При этом, если у Вас в сайдбаре выводятся заголовки последних новостей или последние комментарии (или что-то часто обновляющееся), а время кеширования - 7 дней. То на каких-то страницах "последние комментарии" окажутся совсем не последними. :)
Иногда это не так уж и важно. И снижение нагрузки на сервер важнее.

В некоторых случаях можно выставить срок кеширования поменьше.

Если Вы нашли какую-то серьезную ошибку по всему сайту и исправили ее, то, естественно, стоит сбросить весь кеш, чтобы пользователи не продолжали видеть устаревшие страницы с ошибкой.

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

Вообще, в очистке кеша нет ничего очень старшного. Он просто начинает при этом заполнятся заново. :)

Спасибо за ответ. Возможно вы можете рекомендовать какой срок кеширования лучше выставить для данного новостного портала - FreeSMI.by . В день примерно по 20-25 статей. Использую HyperCache. Сейчас установлено, что закешированные страницы действительны в течение 24 часов -- http://gyazo.com/e5b4787f890ce897e47b0e85329b357d Какой срок кеширования для браузера устанавливают для новостных порталов. Можно ли это как-нибудь посмотреть в кодах других порталов?

Спасибо

Всего: 56