SyncML (синхронизация или обновление?)
Я столкнулся с другой дилеммой, касающейся синхронизации (или обновления?) Данных на сервере с мобильного устройства (с помощью Android).
Я рассматривал SyncML как стандарт для этого, но моя большая проблема в том, что мы планируем syncing
большое количество данных (не только одна запись), и, вероятно, делать это только один раз, два или самое большее 3 раза в день, или, может быть, даже не один раз в день - все зависит от определенных обстоятельств.
Другое дело - устройство или сервер по-прежнему смогут функционировать должным образом без синхронизации. Синхронизация будет просто update
по существу.
Из прочтения спецификаций SyncML, это больше относится к синхронизации между небольшими частями данных и с очень быстрым интервалом (т. Е. Каждые 5-15 минут, но я думаю, что это может регулироваться пользователем). В любом случае, процесс синхронизации более сложен и важен как для устройства, так и для сервера (в большей степени для устройства, я думаю).
Вот цитата из документации, которая заставила меня задуматься:
2.2.3 Синхронизация данных SyncML ориентирован на синхронизацию небольших независимых записей, поскольку измененные записи передаются полностью. Этого достаточно для ввода адресов, коротких сообщений и аналогичных данных. На основной цели SyncML, мобильных устройствах, большинство данных относится к этому типу. Устройства должны иметь возможность отслеживать, какие из их записей были изменены. Каждая запись идентифицируется уникальным идентификатором, поэтому конфликты могут быть обнаружены довольно просто. Поскольку идентификаторы записей могут быть выбраны не произвольно, а автоматически, сопоставление идентификаторов сервера и клиента определено в протоколе. Отображение всегда управляется сервером. Когда клиент получает новый элемент с сервера, он может отправить команду обновления карты, чтобы сообщить серверу, какой идентификатор он присвоил элементу. Теперь сервер использует идентификатор клиента во всех своих сообщениях.
Итак, я предполагаю, что мой вопрос заключается в том, следует ли нам продолжать изучать SyncML для этого или создать собственное решение - может быть, что-то более приспособленное для доставки больших объемов данных, что также может его определить?
1 ответ
Я тоже столкнулся с проблемой. я предпочитаю syncml
решение, в основном потому, что оно более расширяемо.
Таблицы данных, которые мы хотим синхронизировать, являются неопределенными, syncml
может быть лучшим выбором