1. Аудит проекта и подбор оптимальной конфигурации
Оцениваем количество товаров и свойств, объемы движения остатков, частоту обновления цен,
сложность макетов дизайна, шаблонов, компонентов и кода проекта. Рассчитываем насколько быстро
получится подключить ElasticSearch и какие дополнительные элементы инфраструктуры для него
понадобятся. Готовим результаты в виде описания и порядка действий по внедрению, оцениваем
стоимость и отправляем вам на согласование.
2. Заключение договора
Мы готовим шаблон договора с вашими реквизитами, прописываем подобранные условия по
конфигурации, сроки разработки и особенности внедрения решения исходя из результатов аудита.
3. Настройка тестовой копии сайта
Мы делаем полную копию сайта с рабочего сервера на тестовый потому что процесс интеграции
Эластика может занять продолжительное время (до 1 месяца) и основной сайт должен при этом
корректно работать.
4. Настройка сервера ElasticSearch
Тут выбираем - для маленьких магазинов можно запустить эластик прямо на сервере сайта. Но если
каталог превышает около 3 тыс. наименований номенклатуры, то для Эластика необходимо подключить
дополнительный сервер. Обычно мы рекомендуем managed ElasticSearch в Yandex Cloud и подбираем
минимально подходящий тариф.
5. Разработка логики загрузки каталога товаров в Elastic
Данные о ваших товарах - должны каким-то образом попасть в ElasticSearch. Мы разрабатываем
скрипты загрузки каталога в базу данных Эластика и подбираем необходимую логику индексации
данных: для числовых и списочных значений, для параметров с полнотекстовым и морфологическим
поиском, настраиваем необходимые объединения, и т.д.
6. Разработка логики обновления поисковых индексов
Частота обновления данных в Эластике зависит от того как быстро и какие данные в каталоге
изменяются. Как правило, это остатки, цены, сами товары и их свойства. Они могут обновляться как
раз в сутки, так и раз в час, полчаса, каждые десять минут - смотря как быстро они изменяются в
вашем бизнесе.
7. Разработка логики отображения списков товаров по индексам из
ElasticSearch
После подключения эластика - все списки товаров на сайте будут выводиться по данным из его
индексов. В том числе сортировки, разбивка на страницы, списки товаров по разделам, и т.д.
Эластик позволяет получать список карточек для отображения по текущему запросу во много раз
быстрее чем стандартный комплексный компонент каталога Битрикса.
8. Подключение индексов Elastic к компоненту Умного Фильтра 1С-Битрикс
В умном фильтре битрикса должны отображаться те параметры товаров, которые загружены в эластик.
При выборе пунктов в фильтре - должно показываться сколько товаров найдено. И при применении
фильтра - список товаров должен обновиться с учетом выбранных параметров. Всё это с Эластиком
работает во много раз быстрее, чем при стандартной фильтрации.
9. Отладка и тестирование
Проверяем корректность работы всех разделов сайта - что по нужным ссылкам нужные разделы
каталога, товары в правильном порядке, фильтры и пагинаторы работают, и т.д. А вы - проверяете
скорость работы сайта.
10. Перенос на рабочий сервер
Необходимо перенести скрипты, изменения по шаблонам сайта и коду компонентов, настроить
расписание регулярных задач по обновлению данных, настроить в эластике права доступа для
рабочего сайта, чтобы избежать несанкционированных подключений, настроить бекапы, и т.д.
11. Поддержка и сопровождение инфраструктуры
Эластик - это дополнительный сервис для вашего сайта, который требует контроля работы,
резервного копирования и мониторинга. В случае его поломки - может произойти отказ работы всего
сайта. Мы постоянно проверяем его статус и правильность работы, принимаем меры в случае проблем.
Для вас же главное - та скорость и преимущества которые Elastic дает вашему сайту!