Я начинаю настраивать базовую модель данных для крупномасштабного приложения и надеялся на некоторую обратную связь о правильных методах/методах синхронизации, когда речь идет о базе данных сервера и автономных возможностях.
Я использую PHP и mySQL для своего веб-сервера/базы данных.
Я уже знаю, как подключаться, получать данные, хранить данные ядра и т.д. и т.д. Я больше ищут помощь в методологиях и конкретных примерах отслеживания изменений данных:
A) Убедитесь, что приложение и сервер синхронизируются во время онлайн-и офлайн-использования (т.е. автономная активность будет активирована сразу же). B) Оптимизируйте скорость сохранения данных в приложении.
Мои главные вопросы:
Каков наилучший способ проверить, какие новые/обновленные данные в приложении все еще нужно синхронизировать (после использования в автономном режиме)?
(т.е. во всех моих основных объектах данных я помещаю атрибут "isSynchronized" типа BOOL, а затем обновляюсь до "YES" после успешной отправки и ответ отправляется с сервера). Это лучший способ?
Каков наилучший способ оптимизации скорости хранения данных с сервера на основные данные?
(т.е. как я могу только обновлять данные в Core Data, которые старше, чем в базе данных сервера, без повторения каждой сущности и просто обновления каждый раз)? Можно ли без добавления столбца базы данных сервера отслеживать отметки времени обновления для КАЖДОЙ таблицы?
Опять же, я уже знаю, как загружать данные и хранить их в Core Data, я просто ищу какую-то помощь с лучшими практиками в обеспечении синхронизации между базами приложений и серверов, обеспечивая при этом оптимизированное время обработки.