2016-09-16 5 views
0

Я относительно новичок в создании мобильных приложений в целом, но я опытный веб-разработчик.Realtime Синхронизация данных по нескольким устройствам

Предположим, я создаю приложение списка дел. Пользователи Android могут создавать списки и заполнять их элементами. Списки и их содержимое будут сохранены на устройстве через Realm DB.

Некоторые списки могут быть «совместно» с другими. Изменения в списке будут отображаться в режиме реального времени для всех пользователей, которые сотрудничают в списке.

Я планирую иметь онлайн-сервер, в котором хранятся список, информация о пользователе и т. Д. С учетом сказанного достаточно ли зарегистрировать мое мобильное приложение в интерфейсе «веб-сокеты» с сервером, чтобы получить в реальном времени DB синхронизирует?

Я предполагаю, что это будет выполнено с сохранением данных на сервере через реляционную базу данных, такую ​​как MySQL или PostgreSQL, и предоставить полезную нагрузку JSON при изменении базы данных.

Прост ли приложение Android слушать изменения, поступающие с сервера, сортировать как веб-сокеты? Я понимаю, что мне нужно будет управлять конфликтами, доступностью сети и т. Д.

+1

То, что вы ищете, Firebase :-) –

ответ

1

Я предлагаю вам использовать Firebase. Так как синхронизация в реальном времени довольно проста. Поскольку он сохраняет последние обновленные данные на устройстве, вам не нужно беспокоиться о изменениях данных, происходящих на стороне сервера. Когда он подключается к Интернету, он автоматически синхронизирует последние данные и сохраняет их в автономном хранилище. И он хранит данные в формате json.

0

Многие мобильные приложения требуют синхронизации данных с сервером, если они работают в модели клиент-сервер для обмена данными с центральным хранилищем.

Если сервер обслуживает ресурсы через REST API, тогда вся логика синхронизации может обрабатываться на стороне клиента. Логика синхронизации способна обрабатывать двунаправленную синхронизацию между центральным сервером и несколькими клиентами, где с последующим обнаружением конфликта применяются только дополнительные изменения с обеих сторон.

http://havrl.blogspot.in/2013/08/synchronization-algorithm-for.html

+0

Что делать, если синхронизация должна быть условно, позволяет сказать, что если мне нужно синхронизировать данные в соответствии с моей потребности только и не все пользователи данных? – prasoon

+0

Это полностью на. как вы управляете этим. вы можете создать свою собственную логику для конкретного устройства. Например: я хочу синхронизировать пользователя или устройство, поэтому в этом случае вы отправляете push-уведомление об этом устройстве и уведомляете, что некоторая информация изменяется, поэтому клиент будет вызывать sync api этого пользователя –

Смежные вопросы