Юзер имеет право жмякать различные фильтры чтоб подбрать товар.
                  
                  
                    На сервер уходит запрос, он там "считается" и возвращается. Пока что запросы не сложные и рез-т возвращается +- моментально.
                  
                  
                  НО!
                  
                  
                    Со временем количество товаров и сложность будет усложняться + доп инфа будет загружаться от партнеров через Апишки. 
                  
                  
                  
                  
                  
                  Вопрос:
                  
                  
                   Как правильно реазиловать частичную подгрузку уже готовых данных, пока весь запрос не досчитался полностью?  
                  
                  
                   (Часть инфы уже просчиталась и можно уже ее отдавать пользователю, Но другая уже считается)
                  
                  
                  
                  
                  
                  Как вижу это я:
                  
                  
                   1. Создать конвертно на этот запрос какую-то табличку, скажем "user_request" в которой будем хранить информацию о запросе (его айди и будущий результат):
                  
                  
                      id   request_id    results_tmp
                  
                  
                   2. Делать XHR подзапросы на бекенд с запросом "новых данных", пока сервер не ответит : "усё, новых результатов не будет, выдача закончена".
                  
                  
                  
                  
                  
                  Как по красоте это все реализовать? Мб кто-то уже такое делал? какой способ более грамотный/правильный?
                  
                  
                  Хочется на стадии "зародыша" это реализовать правильно. Тот алгоритм что я предложил, насколько это вообще "адекватно"?
                  
                  
                  Сервер: PHP + MariaDB (MySQL)
                  
                  
                
в голову приходит решение на сокетах, ну и в graphQL посмотри
Обсуждают сегодня