Навеянно предложениями от @Deff по скрипту хештегов и жалобами по работе поиска от разных пользователей, особенно от тех, кто "воскрешают" и обновляют старый контент на форуме.
На данный момент сообщения в поиске обновляются с разной частотой, и это вызывает проблемы.
Старые соо индексируются до месяца(тут пыталсо Админа сервиса выспрашивать подталкивать на эту тему)
Новые - 20-30 мин, причем если сообщение редактируется не больше недели от текущей даты - тож индексируется зв 20-30мин
Как я понимаю, заставить наш поиск прочесывать весь форум чаще - это большая нагрузка, от того и получается такая разница в индексировании старых постов и новых.
Однако большинству юзеров и не нужно, чтоб прям все сообщения обновлялись в поиске со скоростью света.
Абсолютно на всех форумах есть куча нередактируемых топиков в архиве, и всем пофиг насколько часто движок будет туда заглядывать.
Вот приблизительный список того, что обычно подвергается регулярным обновлениям:
1. Только определенные важные топики. Например, подробные правила форума, многостраничные статьи или какие-либо хронологии/библиотеки на ролевых играх. Таких топиков не может быть на форуме много, но контент в них важен, поэтому хочется держать актуальную версию в индексе.
Пример с моего форума: топик-статья - Гайд: Как сделать дизайн форума/сайта? - это закрытый для комментов топик, где контент регулярно обновляется, дописывается, иногда нужно поменять местами параграфы (посты).
2. Только определенные важные посты. На многих форумах вся главная информация находится в первопосте топика, а комментарии к нему - это не особо важная для поиска информация, которую вряд ли будут регулярно обновлять. Это опять же могут быть всякие статьи, гайды, первопост важного топика.
Пример с моего форума: Mybb-styler - в первый пост этого топика будут добавляться инструкции, описания, обновления и т.д., при этом остальные посты с обсуждениями и вопросами переиндексировать в поиске опять и опять нет необходимости.
3. Особые форумы и форумы-каталоги. Если кто-то выкладывает кино, музыку, скрипты, картинки и т.д. Или, например, архив анкет на ролевых играх. Иногда требуется изменить оформление всех топиков в таких каталогах. Сюда же идет проблема с тем, что хочется добавить хештеги, а обновление в поиске произойдет спустя месяцы. При этом отсутствует необходимость переиндексировать ВЕСЬ форум - обычно нужен конкретный раздел, где произошли изменения.
Пример с моего форума: Скрипты и стили для МуBB - люди попросили навигацию по хештегам, нам НЕ нужно обновить ВЕСЬ форум в индексе поиска, нам нужно сделать это только в одном форуме и одном подфоруме.
Eсть идея компромисса - как не перенагружать индексацию, но при этом дать возможность обновиться побыстрее.
Давайте добавим функционал для обновления поиска "в ручную" - возможность указать на определенные топики, посты или форумы, где необходимо обновить информацию в поиске.
Я представляю себе этот функционал в админке на вкладке "поиск", где можно запускать переиндексацию для конкретного форума/подфорума или же по списку топиков.
Причем, туда же можно добавить возможность ИСКЛЮЧИТЬ какой-либо раздел из переиндексации или поиска вообще, и админы могут поставить туда форумы со старыми топиками типа "Корзина" или просто форумы, которые они хотят запретить для поиска информации в них - это снизит нагрузку на сервера.
Плюс при наличии такого функционала можно сделать стандартную переиндексацию еще более медленной, тем самым еще снизить нагрузку. Если будет возможность "пнуть" движок и обновлять самое важное и часторедактируемое, никто не будет жаловаться, что поиск медленный в других, менее-важных местах.
Как вариант - можно сделать кнопку "обновить в индексе поиска" при редактировании первопоста в топике с опциями "весь топик" и "только первый пост".
Если есть опасения злоупотреблений, можно добавить ограничение по количеству топиков/форумов, которые можно засунуть на переиндексацию за определенный период времени. например, только один форум в месяц или не больше 100 постов/топиков. Ну и, конечно, платная переиндексация для тех, кто хочет снять ограничения.
Если воплотить, нагрузки на сервера будет меньше, а люди спокойно могут пользоваться хештегами в старых топиках или обновлять контент важных топиков в поиске.
Суммоню @kernel почитать
Отредактировано Герда (Ср, 2 Ноя 2022 19:57:53)