Initial commit

This commit is contained in:
Andrey
2024-04-08 19:15:50 +03:00
commit 072ced2815
51 changed files with 2926 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
@startuml
mainframe api/v1/products Общая схема
Actor user
participant BackendSite
participant Sherlock
Database ElasticSearch
user -> BackendSite: Вводит запрос в поисковую строку
BackendSite -> BackendSite: Обработка запроса на бэкенде\n сайта и формирование запроса\nдля Sherlock
BackendSite -> Sherlock: REST POST api/v1/products
Sherlock -> Sherlock: Перевод запроса\nна второй язык
Sherlock -> Sherlock: Преобразование запроса\n в структуру и формирование\nзапроса для ElasticSearch
note over Sherlock
Отправка запроса в
ElasticSearch с доп
сортировкой по категориям
из Спектра
endnote
alt ElasticSearch ничего не вернул
Sherlock -> ElasticSearch: REST GET products/_search RU
Sherlock -> ElasticSearch: REST GET products/_search EN
ElasticSearch --> Sherlock: Получен пустой ответ
note over Sherlock
Отправляется доп.запрос
в ElasticSearch с меньшим
процентом вхождения
endnote
Sherlock -> ElasticSearch: REST GET products/_search RU
Sherlock -> ElasticSearch: REST GET products/_search EN
ElasticSearch --> Sherlock: Получен пустой ответ
Sherlock --> BackendSite: Получен пустой ответ
Sherlock --> user: Пользователь получает страницу:\nРезультаты не найдены
else Найдены товары
alt Есть товары спектр
Sherlock -> ElasticSearch: REST GET products/_search RU
Sherlock -> ElasticSearch: REST GET products/_search EN
note over ElasticSearch
Категории спектр поднимаются
наверх И товары внутри них
сортируются по скорингу
endnote
else Товаров спектр не найдено
Sherlock -> ElasticSearch: REST GET products/_search RU
Sherlock -> ElasticSearch: REST GET products/_search EN
note over ElasticSearch
Товары сортируются
по скорингу
endnote
end
ElasticSearch --> Sherlock: Передает отсортированный\nсписок товаров
Sherlock --> BackendSite: Список товаров
BackendSite --> user: Пользователь получает страницу:\nРезультаты поиска
end
@enduml