Как правильно реализовать список с обновляющимися в реальном времени данными?
Мы делали это так:
Любое изменение/добавление/удаление данных создает в базе запись с неразрывным id.
Методы апи:
1) возвращает все объекты данных целиком + id последней записи об изменениях
2) метод отдающий записи изменений с id в указанном интервале.
3) сокет в котором в realtime приходят записи об изменениях. (делали на node.js + socket.io, там это из коробки реализуется очень быстро и просто)
Логика приложения:
Скачиваем все объекты из метода [1].
Начинаем слушать сокет [3], если нам приходит запись с id > last_id+1, запрашиваем разницу из метода [2]
1. Реализуем через WebSocket и подпиской на канал реал-тайм мониторинга.
2. При изменении - пуляем в канал ID-шник(и) элемента(-ов) и список его(их) новых значений в json-формате в виде ЕДИНОГО пакета.
3. Клиенты принимают пакет и обновляют нужные данные.