Есть SPA на AngularJS, которое работает с NodeJS-сервером через REST API.
Хочется научить его получать от сервера изменения статуса обработки REST-запросов, потому как некоторые работают довольно долго.
Пример изменений статуса обработки REST-запроса.
- Запрос отправлен
- Запрос получен
- Получение данных из БД 1
- Получение данных из БД 2
- Связка данных
- Подготовка ответа
Это вроде как отлично ложится на WebSockets, но чем дальше в лес, тем толще волки.
Непонятно, как увязывать REST-запросы с конкретным клиентом, который открыл подключение по сокету.
Вести словарь соответствия id клиента и номера сессии сокетов? Тогда словарь будет при переподключении бесконтрольно расти, что пахнет протечкой памяти.
Или вообще поменять REST на сокеты? Тогда нужно будет всё кеширование ручками делать.
Куда ни кинь — всюду клин.