@Persotr27

Синхронизация большого redux state с Firebase (realtime or firestore)?

Добрый день. У меня есть React приложение с редуксом и надо один из его редьюсеров хранить на сервере. Копия этого редьюсера каждого пользователя должна быть в базе и по сути быть синхронизирована с его локальной версией. В качестве сервера используется Firebase, который предоставляет две "БД": риалтайм и фаерстор. При изменениях в базе (вручную или через другое приложение) локальный редьюсер также должен менятся. Таким образом, нужен некий риалтайм. Эту функцию предоставляют и риалтайм ДБ и фаерстор. Но проблема в том, что редусер сам по себе очень большой: много полей и вложенностей и не совсем понятно, как такое будет обмениваться по сети. Можно подписаться на большой объект через листенеры по типу onSnapshot (Firestore) или onValue (Realtime DB). Но тогда, при изменении одного строчного значения в этом объете будет пересылаться весь объект обратно и заменяться полностью в редьюсере, что какбы приведет к лишним ререндерингам и обмену лишними данными по сети. Как правильно было бы такое организовать, есть ли у кого опыт?
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы