Стратегия автономной / онлайн синхронизации данных

Сначала проблема заключается в том, что вы не поставили никаких параметров для mysqli_error. Я вижу, что он был решен на основе поста здесь. Вероятно, следующая проблема возникает из-за неправильного пути к файлу для включенного файла ...

Вы уверены, что этот код

$myConnection = mysqli_connect("$db_host","$db_username","$db_pass","$db_name") or die ("could not connect to mysql");

находится в папке «scripts», а ваш файл основного кода находится на том же уровне, что и папка сценария?

37
задан Ferruccio 7 November 2008 в 12:24
поделиться

3 ответа

Существует много библиотек Java для синхронизации/репликации данных. Два, что я знаю, нарцисс и SymmetricDS. В предыдущей жизни я по-дурацки реализовал (в Java) свой собственный процесс репликации данных. Это походит на вид вещи, которая должна быть довольно простой, но если данные могут быть обновлены в нескольких местах одновременно, это - сложный hellishly. Я настоятельно рекомендую использовать один из вышеупомянутых проектов попытаться обойти контакт с этой сложностью сами.

27
ответ дан Ivo Limmen 7 November 2008 в 12:24
поделиться

Проблема biggist с синхронизацией - когда пользователь редактирует что-то офлайн, и это редактируется онлайн одновременно. Необходимо объединить две измененных части данных или соглашение с UI, чтобы позволить пользователю говорить, какая версия корректна. Если Вы устраняете возможность оба отредактированный одновременно, то Вы не должны решать эту липкую проблему.

метод должен обычно добавлять поле, 'измененное' ко всем таблицам, и сравнивать измененное поле клиента для данной записи в данной строке против измененной даты сервера. Если они не соответствуют, то Вы заменяете данные сервера.

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

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

16
ответ дан Kieveli 7 November 2008 в 12:24
поделиться

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

4
ответ дан Norman Ramsey 7 November 2008 в 22:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: