Библиотеки для онлайн / автономной мобильной синхронизации - PullRequest
3 голосов
/ 17 января 2012

Я разрабатываю приложение PhoneGap для Android (будет работать и на iOS).

Приложение будет онлайн / офлайн.В настоящее время я использую javascript / jquery для выполнения ajax-вызовов к службе JSON WCF на стороне сервера.

Это мой механизм синхронизации.Это очень произвольно, мне нужно синхронизировать данные из таблицы базы данных x, поэтому я напишу некоторый код на стороне сервера, чтобы загрузить эти данные и представить их в службе.Я напишу некоторый код на стороне клиента, чтобы вызвать этот метод в службе и синхронизировать его с моей базой данных на стороне клиента.

Убедиться в том, что данные не конфликтуют, в значительной степени соответствует вашим собственным требованиям.

Просто интересно, есть ли какие-нибудь библиотеки для синхронизации данных, подобных этой?Подумайте о чем-то вроде репликации SQL (но не репликации SQL).

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

ОБНОВЛЕНИЕ:

Этот вопрос был снова поднят.Почему у нас есть стандарт HTML5, который указывает, что мы можем иметь автономные базы данных и кэшировать html-страницы и javascript на устройстве, но у нас нет стандартного способа синхронизации данных?

Это указываетк тому факту, что мы ожидаем, что сможем выйти в автономный режим с нашими приложениями.

Конечно, это может быть легко сделать в простом приложении, которое мы должны разрабатывать в начале.

Но следующее приложение, которое мы будем писать, будет намного сложнее.

Ответы [ 3 ]

1 голос
/ 01 марта 2012

Вы пробовали persistence.js sync

1 голос
/ 02 марта 2012

Я хотел бы пригласить вас взглянуть на проект с открытым исходным кодом, службу синхронизации OpenMobster. Вы можете выполнять все типы операций синхронизации (двусторонний, односторонний клиент, одностороннее устройство, загрузка и т. Д.). Кроме того, все модификации автоматически отслеживаются и синхронизируются с облаком. Вы можете отключить приложение, когда сетевое соединение не работает. Он будет отслеживать любые изменения и автоматически в фоновом режиме синхронизировать его с облаком при восстановлении соединения.

В настоящее время на Android и iOS поддерживаются только собственные разработки. Однако следующая версия 2.2-M8 будет поддерживать сквозную интеграцию с PhoneGap на Android, а 2.2-M9 добавит iOS.

Вот ссылка на проект с открытым исходным кодом: http://openmobster.googlecode.com

1 голос
/ 17 января 2012

afaik, нет ни одного.

кто-то уже задавал похожий вопрос для django: Структура синхронизации данных / алгоритм для серверного <-> устройства?

Это в основном зависит от типа данных, которые вы хотите синхронизировать, и стратегии разрешения конфликтов.

Если вам не нужно разрешать конфликты, просто транзакцияID и повтор пропущенных транзакций на сервере и клиенте при восстановлении соединения.

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

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