Возьмем, например, ленту. Как грамотно реализовать подгрузку ленты по websocket, с учетом подписанных юзеров?
То есть на сервере добавляем вопрос в MongoDB и делаем socket.emit('new-question', questionData);
Но ведь надо еще отфильтровать клиентов по интересам? Вот тут у меня затык полнейший.
Была такая идея: подгрузить список тегов, на которые подписан юзер и кэшировать на клиенте. А при получении данных с сервера проверять теги нового вопроса и уже на клиенте решать - отрисовывать или нет.
Я правильно подхожу к решению или опять велосипед из костылей мучу?
sockets - массив подключенных сокетов. В переменной socket.user можно хранить пользователя с базы. Перебираете всех пользователей и смотрите, кому нужно отправлять вопрос, а кому нет.