Почему посты в лентах появляются с опозданием
Прислали ссылку на статью про то, как блоги попадают в ленты с задержкой. Попался на том, что даже у крупных платформ — три из десяти — не настроены на мгновенную доставку. А это значит, что читатели видят посты не сразу. И это не ошибка, а умолчание. И я уже начал проверять у своих клиентов, как устроена доставка контента.
О чём речь и почему я считаю это важным для сайта
Речь о том, как контент попадает в ленты читателей. Если сайт не настроен на push-уведомления, посты появляются только при следующем опросе — и это может быть через час, сутки, даже дольше. Это не про «быстрее», а про предсказуемость.
Я считаю это важным, потому что задержка — это не технический сбой, а упущенная возможность. Читатель не знает, что сайт обновился. Он думает, что ничего нового нет. И уходит. Это не про «трафик», а про доверие.
Как это устроено — что тут вообще происходит
Суть в том, что лента читателя не «смотрит» сайт постоянно. Она проверяет его по расписанию. Если у сайта есть WebSub-хаб — он уведомляет хаб при публикации. Хаб мгновенно отправляет новость всем, кто подписан.
Но хаб работает только если он указан в настройках сайта. И если читательский сервис его поддерживает. Всё остальное — просто опрос. И если у сайта нет хаба, то задержка — это норма, а не ошибка.
Как понять, что это касается вашего сайта («как я это проверяю»)
Я смотрю на заголовки ответа от сайта. Если в HTTP-заголовке есть link: rel="hub", то хаб указан. Если в XML-фиде есть , то тоже.
Если нет — значит, сайт не настроен на push. Проверяю, есть ли в ответе заголовки ETag и Last-Modified. Если нет — каждый опрос скачивает весь файл. Это неэффективно. И если сайт кэшируется — и кэш не обновляется при публикации — пост не появится вообще.
Что с этим делать («что я делаю в таких случаях»)
Если хаб не указан — добавляю его в RSS-канал. Для WordPress, Ghost, статических сайтов — это простая правка. Достаточно добавить строку с rel="hub" и адресом публичного хаба.
Если хаб есть, но не работает — проверяю, не кэшируется ли контент. Если да — настраиваю пургинг при публикации. Если нет — проверяю, правильно ли указан адрес rel="self". Он должен совпадать с тем, что читатели используют.
Что здесь даёт поддержка
На постоянной поддержке я закрываю эту задачу так: проверяю, есть ли в фиде ссылка на хаб, и есть ли в ответе заголовки для кэширования. Если нет — добавляю. Если есть — проверяю, как работает кэш.
Просроченный сертификат или домен — предсказуемый и полностью предотвратимый сбой. У нас мониторинг каждые несколько минут, 24/7. Это не случайность — это часть работы.
Проверить, как работает доставка контента, можно за час. А вот сбоя не будет — если это включено в регулярный контроль. Приглашаю на бесплатный аудит сайта.