2013-10-14 3 views
0

Hye там im собирается разработать веб-систему для моего проекта в прошлом году с использованием html5, но я немного запутался в том, как я собираюсь синхронизировать с мобильного на сервер ... есть ли способ для синхронизации с мобильным (SQL lite) с администратором (SQL-сервер) ... любезно помогите мне в этом вопросеСинхронизация с мобильного на сервер

+0

Я думаю, вам нужно будет более конкретно узнать, что такое ваша «мобильная веб-система». Обычный браузер не имеет доступа к базе данных SQL Lite, поэтому, когда вы говорите HTML5, я предполагаю, что вы говорите о чем-то, кроме обычного браузера. Браузеры могут выполнять вызовы AJAX для отправки или получения данных с сервера. В других средах могут быть дополнительные возможности. – jfriend00

ответ

0

Синхронизация может начинаться просто, но быстро может стать довольно сложной. Все зависит от ваших потребностей.

Задайте себе следующие вопросы:

  • мне нужно сделать, чтобы справиться с удалений? - флаг надписи/delete
  • синхронизирован в одну сторону или в одну сторону? - резервное копирование/копирование и полная синхронизация
  • делает что-нибудь более 100 мс в секунду, чтобы сохранить? - проблемы с датой/временем или необходимость перекрытия
  • Можно ли записать запись на двух устройствах (или устройстве и сервере) сразу? - конфликты

Простое решение - просто использовать поле «lastModified» и отслеживать, где вы были. Не забудьте использовать дату/время системы, на которой запущена база данных, поэтому на устройстве получить текущую дату/время UTC сервера, а затем получить все обновления < = до этой даты/времени. Просто запрос для всех записей, поскольку они новее, чем вы сохранили дату и скопировали их на другой сервер.

Чем сложнее решение отслеживает удаления, обрабатывает транзакцию (созданную перед синхронизацией, заканчивается после синхронизации, пропущено простым решением), имеет расширенные разрешения конфликтов, поддерживает пакетную обработку и т.д.

Чтобы быть еще более безопасными вы хотите, чтобы остановить используя дату/время и глобальный счетчик для ваших изменений. Это становится еще более сложным, если вы хотите отслеживать начатые обновления, но не совершать транзакции (см. Отслеживание изменений SQL-Server, CHANGE_TRACKING_CURRENT_VERSION()).

Более подробную информацию можно найти на странице Microsoft Sync Framework как пример того, как это делается.

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