Забота о ресурсах сервера для веб-приложения в реальном времени - PullRequest
0 голосов
/ 29 февраля 2020

Я занимаюсь разработкой веб-приложения для реального времени, скажем, приложения чата.

Позвольте мне начать с моей настройки:

Сервер

Перья JS (использует socketio)

Клиент

Reactjs и Redux Когда событие в реальном времени получено на стороне клиента, я отправляю в Redux, поэтому пользовательский интерфейс ReactJS будет обновляется автоматически.

Поскольку это веб-приложение реального времени, на стороне клиента мы должны подписаться на прослушиватель событий в реальном времени.

// Example. This will subscribe to the real time event in feathersjs
const messages = client.service('messages')
messages.on('created', () => {... do whatever we want})

Теперь моя главная задача

По моему мнению, поскольку данные в реальном времени будут отправляться в Redux Store, почему бы мне просто не подписать все на слушателя (скажем, 200 слушателей), и поэтому мой магазин Redux всегда актуален? , Только removeAllListener, когда пользователь выходит из системы.

  1. Будет ли это тянуть ресурсы моего сервера? Так как я не removeListener(), когда пользователь перешел на другую несвязанную страницу.
  2. Слушатель в реальном времени для обновления хранилища лексемов, в конечном итоге ReactJS Пользовательский интерфейс обновляется автоматически, это правильная структура? или какая-нибудь лучшая структура?

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...