itpp-labs / stalin

ГОЛОСУЙ☭НЕ☭ГОЛОСУЙ
https://stalin.memo.ru
0 stars 2 forks source link

Документация по обновлению сайта #71

Closed yelizariev closed 4 years ago

yelizariev commented 4 years ago

Генерация сайта (точнее генерация файлов сайта - статичные файлы и поисковый индекс), может занимать значительное время -- от 10 секунд до 30-60 минут, но это время больше зависит от мощностей компьютера\сервера, на котором запускаются скрипты. Однако, для генерации сайта не нужно останавливать сайт. Более того, генерация обновленного сайта может происходить на другой машине (например на ноутбуке администратора). Далее, когда файлы готовы их можно загрузить на сервер и в поисковую программу (elastiс search). Как видно, здесь две подсистемы -- страницы сайта и поиск.

  • Обновление страниц сайта не приводит к остановке сайта. В любой момент сайт будет доступен и пользователь увидит либо текущую версию страницы, либо (когда процесс завершился) -- обновленную

  • Обновление поиска также не требует остановки сайта (и поиска). В любой момент поиск будет доступен и пользователь увидит либо результаты текущего индекса, либо (когда процесс завершился) -- обновленного

Если эти процессы запускать одновременно, то может быть несущественное расхождение у подсистем в течение 20-60 секунд. А именно: в результатах поиска будут показываться новые справки, а страницы сайта - текущие справки. Или наоборот. Лучше всего сначала обновить страницы сайта, а потом поиск, чтобы пользователь в течение этих 60 секунд не возникло ситуации, когда пользователь нашел персону в поиске со справкой, перешел на страницу и не нашел полную версию справки.

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