|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Никто не может поделится ссылками на интернет-источники и бумажные книги по offline-синхронизации информационных сущностей. Есть определенная распределенная БД, нужно разработать простой механизм кастомизации для "умной" синхронизации данных в общем случае. Что именно читать? Результаты уже есть, но хотелось бы посмотреть на другие решения, если они открыты. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 00:47 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практики, не совсем понятно Коллега - Что будем синхронизировать - Данные в Базах или Сущности в Моделях? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 18:22 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr MarmeladШаманские практики, не совсем понятно Коллега - Что будем синхронизировать - Данные в Базах или Сущности в Моделях? Экземпляры сущностей, которые размазаны по таблицам в базе. Протокол клиентско-серверного обмена уже есть (пакеты данных нечто типа иерархической БД типа xml). Нужна литература на стратегии "умной" репликации. С Уникальностью проблем нет, так как заранее озаботился чтобы все ID были типа GUID. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 20:19 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практикиНужна литература на стратегии "умной" репликации. С Уникальностью проблем нет, так как заранее озаботился чтобы все ID были типа GUID. Поставлю вопрос ещё по другому: Ваша задача : а) Архитектурная (есть несколько баз различных вендоров данные не критичны) б) Аналитическая (есть модели и их надо привести к знаменателю - данные вторичны) в) Административная (есть базы данных от вендоров с данными в продакшн - надо синхронизировать всё) В Зависимости от этой буквы А и будет конкретное решение, Коллега. две другие буквы DB нам известны. Кстати и откуда генерироваться будет Ваш GUID? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 20:54 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr MarmeladШаманские практикиНужна литература на стратегии "умной" репликации. С Уникальностью проблем нет, так как заранее озаботился чтобы все ID были типа GUID. Поставлю вопрос ещё по другому: Ваша задача : а) Архитектурная (есть несколько баз различных вендоров данные не критичны) б) Аналитическая (есть модели и их надо привести к знаменателю - данные вторичны) в) Административная (есть базы данных от вендоров с данными в продакшн - надо синхронизировать всё) В Зависимости от этой буквы А и будет конкретное решение, Коллега. две другие буквы DB нам известны. Кстати и откуда генерироваться будет Ваш GUID? Клиент и сервер - приложения. Клиент в котором лежит дерево определённый данных неограниченной вложенности (реально вложенность не более 30), нечто вроде внутренней файловой системы. Клиент меняет эти "файлы" по желанию как хочет(создаёт, изменяет, удаляет(удаление логическое - отметка об удалении)). http://www.tidyfavorites.com/ Есть аккаунт на сервере, на котором клиент может синхронизировать своё текущее состояние (бекап или синхронизация нескольких копий клиентов). На каждый клиент на сервере свою база. Все данные создаются на клиенте - сервер занимается только их сохранением и умной синхронизацией между несколькими клиентами. Там же (на клиенте) каждой записи в базе в качестве идентификатора и присваивается GUID(чтобы не думать об реализации уникальности). Клиент периодически (вручную или по сценарию) производит синхронизацию данных с базой на сервере, но при этом с одним серверным аккаунтом могут одновременно работать несколько копий клиента на разных компьютерах. Необходимо, если возможно, дать ссылки на литературу по организации сценариев синхронизации данных из базы, если структура таблиц может различаться между разными базами. Синхронизация файлов подойдёт. Клиент-сервер написаны на Delphi, база и там и там Firebird, но на сервере может быть база другого вендора. Но так как клиентов может быть от нескольких тысяч до миллионов, то всё это должно быть полностью автоматизировано, чтобы все коллизии разрешались умным алгоритмом. У меня уже есть работающий прототип, но хотелось бы посмотреть другие пути решения и подкорректировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 21:22 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практики На каждый клиент на сервере свою база. Моя переводческая система кажется никогда это не переведёт. Пжст поясните авторВсе данные создаются на клиенте - сервер занимается только их сохранением и умной синхронизацией между несколькими клиентами . Там же (на клиенте) каждой записи в базе в качестве идентификатора и присваивается GUID(чтобы не думать об реализации уникальности). Это уже более менее понятно Только почему "несколькими клиентами"? : У меня уже есть работающий прототип, но хотелось бы посмотреть другие пути решения и подкорректировать. А Ваш прототип можно попробовать? Для более полного понимания... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 22:01 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr MarmeladШаманские практики На каждый клиент на сервере свою база. Моя переводческая система кажется никогда это не переведёт. Пжст поясните Аккаунтом много, их данные никак не пересекаются, поэтому был выбран вариант, что на каждого из аккаунтов создаётся свою отдельная БД, это позволит создать распределённую систему, где можно задействовать несколько серверов, каждый их которых будет обслуживать, скажем только 10000 определённых аккаунтов в сутки. Это позволит на базе обычного движка FB обрабатывать до нескольких миллионов подключений, так как они будут разнесены в системе (при создании нового аккаунта будет автоматически выбираться менее нагруженный рабочий сервер, на котором и создаваться база). В общем архитектура здесь такова: Балансировщик у которого функция указать для определенного логина его рабочий сервер. Содержит в себе только базу аккаунтов и сопоставленных с ними рабочих серверов. Рабочие сервера , каждый из которых обслуживает свои аккаунты. На каждом из рабочих серверов лежат базы конкретных аккаунтов, которых он обслуживает. Один аккаунт может работать на нескольких компьютерах одновременно, используя свою локальную базу данных FB (сервер только для синхронизации данных между ними). Mr Marmelad : У меня уже есть работающий прототип, но хотелось бы посмотреть другие пути решения и подкорректировать. А Ваш прототип можно попробовать? Для более полного понимания... Пока нет, он работает только в лабораторных условиях на нужных данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 23:30 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практики, Ещё такой вопрос Коллега. А какой вендор выбран для поддержки такой архитектуры (платформа?) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2009, 15:04 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr MarmeladШаманские практики, Ещё такой вопрос Коллега. А какой вендор выбран для поддержки такой архитектуры (платформа?) ПО написано на Delphi, командой в которой я работаю. FB - вендор понятен. Серверная платформа Windows Server 2000+, для клиентов Win2000, XP и выше. Для сервера понятно, что лучше было бы ваять на чём-то реально серверном, но серверный код на Delphi написан так, чтобы его без бубнов можно было перевести на FreePascal64bit(это если Delphi 2010 не допилят с его 64-битностью). Так что здесь нет никаких ограничений. Для общения клиента и сервера создан RMP(remote message processing) протокол, несколько похожий на технологию COM, но более отказоустойчивый и рассчитанный для Internet (сбор и прибивание подвисших серверных объектов). Лисапед, но который полностью подходит под данный тип задач. Если я правильно понял ваш вопрос, то ответ дан? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2009, 16:35 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практики, Если мне не изменяет моё чутьЁ Вы Коллега стоИте у истоков очень серъёзного скачка в технологии. Я не думаю что где то есть какие либо серъёзные материалы или разработки в Вашей области. Она [тематика] сама по себе очень интересна и экстремально нова. Мелкомягкий ведёт серъёзную политику внедряя WCF и WPF последние пару лет - но для их успешного скачка не хватает малости - новых облаков. Мелкомягкий представил решение в виде Microsoft Sync Framework что прежде всего позволяет внедрить pier-to-pier collaboration - именно тот самый асинхронный процесс синхронизации данных Почитайте тут . и вообще держите нас в курсе если найдёте что нить интересное. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2009, 17:37 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Кстати Коллега, посмотрите эту презентатцию от MS - в ней в достаточно образно хоть и без никаких объяснений - видны элементы Вашего поиска. Думаю вам будет интересно: ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2009, 18:04 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Это тоже стоит посмотреть Salesforce это уже десять лет назад реализовала.Пробовал промониторить цены,после десятка, сбился со счета ЗЫ Синхронизация в MS Live Mash будет на базе Sync Framework ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 00:47 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVa Это тоже стоит посмотреть Salesforce это уже десять лет назад реализовала.Пробовал промониторить цены,после десятка, сбился со счета ЗЫ Синхронизация в MS Live Mash будет на базе Sync Framework Спасибо. У не не нужен технологический монстр. Пнял что нужно доработать в моём липапеде чтобы оно всегда корректно работало с моей задачей. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 00:49 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практики Результаты уже есть, но хотелось бы посмотреть на другие решения, если они открыты. используем подобную модель офф-лайновой синхронизации для распределенных систем. Конфигурация заключается в построении схемы от отправителя к получателю, т.е. каждый отправитель знает кому нужна та или иная информация из его системы и готовит соответствующие реплики сразу, в момент внесения изменений. По заданному расписанию работает специальный сервис, который связывается с получателем (Сервером приложений) и они между собой договариваются: один говорит что у него есть для получателя, другой отвечает сможет ли он принять ту или иную реплику. Если договорились и нет противопоказаний, то получатель (удаленный сервер приложений) принимает реплику и исполняет то, в ней указано. Не договорились - отказ. Т.е. как такового "сравнения" не существует. Фактически, образно, имитируется ситуация как будто локальный пользователь подключился он-лайн к удаленному серверу и продублировал работу, сделанную на локальном сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 01:46 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
iscrafm, Коллега а при "отказе" идёт полный откат "локального запроса" {сиреч синхронизация} или всёжтки системы дис-интегрируются? Так я понимаю всё на основе XML? Что то типа WebSphere? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 01:55 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr Marmeladiscrafm, Коллега а при "отказе" идёт полный откат "локального запроса" {сиреч синхронизация} или всёжтки системы дис-интегрируются? "отказ" крайне редкая вещь, обусловленная в основном техническими причинами. Пример. В одной системе размещают (публикуют) документ для согласования. Формируется реплика для получателей, согласно work-flow, содержащая команды для регистрации данного документа в базах данных удаленных узлов и собственно сам файл документа. При старте Транзита (так называется сервис, iTransit) он связывается с удаленным сервером приложений, передает документ и регистрирует его в удаленной базе данных. Через некоторое время на документ кто-то на маршруте ставит визу. Формируется реплика для передачи по маршруту. Но в момент очередной сессии может не быть связи с удаленным сервером приложений или сервер ответил, но не может провести реплику у себя в базе... выдает отказ. Транзит на стороне отправителя оставляет реплику в Исходящие и ждет следующего сеанса. Если получилось - регистрирует реплику в Отправленные. Т.е. он ее все равно отправит и синхронизирует системы, но возможно с задержкой на заданные интервалы сеансов. Как в e-mail. Mr MarmeladТак я понимаю всё на основе XML? не совсем. Система-отправитель просто регистрирует необходимые изменения. Если это был запрос на изменение БД, то так и реплика выглядит - команды на изменение БД (простой пример ниже на рисунке). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 02:30 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
чтобы немного может понятней было, маленький ролик ... показано, как пользователь редактирует что-либо в системе, система протоколирует его действия и результат применяет к текущей БД (в примере) и, если требуется, сохраняет в виде реплики для определенного удаленного сервера. Далее все как написал чуть выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 03:57 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
iscrafmчтобы немного может понятней было, маленький ролик ... показано, как пользователь редактирует что-либо в системе, система протоколирует его действия и результат применяет к текущей БД (в примере) и, если требуется, сохраняет в виде реплики для определенного удаленного сервера. Далее все как написал чуть выше.А как решаются конфликты репликации, когда один объект менялся с двух сторон? Или схема работы пользователей построена так, что их не может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 10:31 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Bely, ну это не репликация, я оффлайн работа с центральной БД в духе АДО.НЕТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 11:31 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
авторСпасибо. У не не нужен технологический монстр. Пнял что нужно доработать в моём липапеде чтобы оно всегда корректно работало с моей задачей. Если ваш лисапед сможет устойчиво ездить, то он будет мало отличаться от этих монстров,на которые затрачены немерянные бюджеты, ресурсы и которые еще,быстрее всего,находятся только в зачаточном состоянии. автор Аккаунтом много, их данные никак не пересекаются, поэтому был выбран вариант, что на каждого из аккаунтов создаётся свою отдельная БД, это позволит создать распределённую систему, где можно задействовать несколько серверов, каждый их которых будет обслуживать, скажем только 10000 определённых аккаунтов в сутки. Это позволит на базе обычного движка FB обрабатывать до нескольких миллионов подключений, так как они будут разнесены в системе (при создании нового аккаунта будет автоматически выбираться менее нагруженный рабочий сервер, на котором и создаваться база). В один прекрасный момент ненагруженный загрузиться под завязку,клиентам может потребоваться дополнительные ресурсы,необходимо обеспечить требумую пропускную способность,надежность,безопасность,восстановление данных и тд.Вы хотите реализовать в чистом виде cloud-computing и в дополнение к нему:работу в off-line и "умную" синхронизацию между несколькими клиентами, к которой даже требования не можете толком описать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 12:19 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Belyiscrafmчтобы немного может понятней было, маленький ролик ... показано, как пользователь редактирует что-либо в системе, система протоколирует его действия и результат применяет к текущей БД (в примере) и, если требуется, сохраняет в виде реплики для определенного удаленного сервера. Далее все как написал чуть выше.А как решаются конфликты репликации, когда один объект менялся с двух сторон? Или схема работы пользователей построена так, что их не может быть? почему же, конечно может такое быть. Такие ситуации разруливаются точно также, как и в локальной сети. Если входящая реплика имеет полномочия перекрыть запись в базе, то она ее перекроет. Не имеет - получит отказ. Ситуация же ничем не отличается. Представьте что в сети, работает группа пользователей под именем какого-то Сервера приложений . Они точно так же, как и локальные, редактируют записи, добавляют, удаляют и т.п. При этом локальная система естественно как и локальному пользователю предоставляет такие же определенные полномочия. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 13:07 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVaЕсли ваш лисапед сможет устойчиво ездить, то он будет мало отличаться от этих монстров,на которые затрачены немерянные бюджеты, ресурсы и которые еще,быстрее всего,находятся только в зачаточном состоянии. имно, заблуждение. Можно потратить ресурсы, немерянный бюджет, а можно просто придумать архитектуру и логику которая не будет требовать ни таких ресурсов, ни огромного бюджета, но будет просто хорошо выполнять свою работу. На этом-то и базируется понятие ноу-хау. Вполне возможно у Автора именно оно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 13:14 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
iscrafmBelyА как решаются конфликты репликации, когда один объект менялся с двух сторон? Или схема работы пользователей построена так, что их не может быть? почему же, конечно может такое быть. Такие ситуации разруливаются точно также, как и в локальной сети. Ну при Offline-синхронизации - шансы нарваться на конфликт гораздо больше. Если при работе в локальной сети для предотвращения одновременного доступа используют блокировки (серверные или самопальные), то при Offline синхронизации, скажем, 1 раз в день - шансы нарваться на одновременное редактирование одной записи двумя пользователями - существенно возрастают. Собственно, в репликациях это обычно самый тонкий момент, который приходится как-то разруливать. Как у вас с этим было? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 14:18 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
авторимно, заблуждение. Можно потратить ресурсы, немерянный бюджет, а можно просто придумать архитектуру и логику которая не будет требовать ни таких ресурсов, ни огромного бюджета, но будет просто хорошо выполнять свою работу. На этом-то и базируется понятие ноу-хау. Вполне возможно у Автора именно оно. Был бы только рад этому. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 14:21 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
BelyiscrafmBelyА как решаются конфликты репликации, когда один объект менялся с двух сторон? Или схема работы пользователей построена так, что их не может быть? почему же, конечно может такое быть. Такие ситуации разруливаются точно также, как и в локальной сети. Ну при Offline-синхронизации - шансы нарваться на конфликт гораздо больше. Если при работе в локальной сети для предотвращения одновременного доступа используют блокировки (серверные или самопальные), то при Offline синхронизации, скажем, 1 раз в день - шансы нарваться на одновременное редактирование одной записи двумя пользователями - существенно возрастают. Собственно, в репликациях это обычно самый тонкий момент, который приходится как-то разруливать. Как у вас с этим было? не раз в день... где как. от 1 мин до 15-20 мин интервалы. Описанный вами тонкий момент только в том случае, если этот момент искуственно создавать, а потом героически преодолевать. Как в примере с "блокировками", например. Я таких тонких моментов не придерживаюсь ни в архитектуре, ни в бизнес-логике, поэтому даже не знаю что рассказать про описаннную Вами ситуацию, сорри. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 14:35 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Belly, извините, последний спич немного не по теме получился. Ответ на озвученную Вами ситуацию чуть выше был. Имитируется работа пользователя в локальной сети (в разумно конечно пределах, без перекуров и кофе). Если пользователю сообщается о том, что документ заблокирован, то он просто ждет некоторое время и повторяет попытку. Так же и здесь... реплика остается в Исходящих и будет применена позже, если за это время не произойдет изменений, делающих невозможным ее применение. Например документ удалят. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 15:06 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
BelyiscrafmBelyА как решаются конфликты репликации, когда один объект менялся с двух сторон? Или схема работы пользователей построена так, что их не может быть? почему же, конечно может такое быть. Такие ситуации разруливаются точно также, как и в локальной сети. Ну при Offline-синхронизации - шансы нарваться на конфликт гораздо больше. Если при работе в локальной сети для предотвращения одновременного доступа используют блокировки (серверные или самопальные), то при Offline синхронизации, скажем, 1 раз в день - шансы нарваться на одновременное редактирование одной записи двумя пользователями - существенно возрастают. Здесь всё у меня намного проще. Кто последний тот и прав, тоесть в запись идёт только последняя по серверному времени запись, на остальные клиенты она реплицируется перетирая эти же записи, но более старые. У меня проще, так как пользователь один, просто у него компьютеров много. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 15:33 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Шаманские практикиУ меня проще, так как пользователь один, просто у него компьютеров много. Ага - значит всёжтки облачность... - очень заманчиво Коллега iscrafm - а почему не XML? Разрешите поинтересоваться? Ведь тот же конверт с репликой мы пошлём асинхронно "ТУДА" он дождётся своей очереди и любая база (в том числе не SQL) сможет его переварить. Почему ограничен синтаксис? Ограничения архитектуры? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 15:59 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr MarmeladКоллега iscrafm - а почему не XML? Разрешите поинтересоваться? Ведь тот же конверт с репликой мы пошлём асинхронно "ТУДА" он дождётся своей очереди и любая база (в том числе не SQL) сможет его переварить. Почему ограничен синтаксис? Ограничения архитектуры? нет. все проще. ТРАНЗИТ связывается с провайдером соответствующего сервиса на удаленном App Server и общается с ним на том языке, который ему наиболее близок, без дополнительных преобразований. Если суть реплики заключается в обновлении БД, то зачем ее преобразовывать в XML-конвертик, отправлять, затем удаленный провайдер принимает конверт, преобразовывает в SQL и исполняет скрипт в своей СУБД. Просто лишние действия исключаются. Конечно, если на другом конце просят XML, то посылка пойдет в формате XML, если просто команду для файловой системы - пойдет в виде команды, если в виде срипта на каком-нибудь PERL - передаст скрипт и т.п. Т.е. сам Провайдер определяет в каком формате он принимает посылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 16:08 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
iscrafm, То есть Ваш iTransit - это "разумный" сервис - И как обеспечивается протокол "знаний" формата переписки? Мне надо поподробнее посмотреть Ваши демо ролики - но они русифицированы и я не успеваю всю информацию усвоить. А на английском есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 16:59 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Mr Marmeladiscrafm, То есть Ваш iTransit - это "разумный" сервис - И как обеспечивается протокол "знаний" формата переписки? Мне надо поподробнее посмотреть Ваши демо ролики - но они русифицированы и я не успеваю всю информацию усвоить. А на английском есть? к сожалению сейчас на английском нет. Протокол знаний определяет провайдер, который является потребителем информации. Это как сдача регламентной отчетности, дали формат, ему и нужно соответствовать. Получатель не утруждает себя преобразованием к нужному виду, за это отвечает отправитель. К примеру, на одном узле в качестве СУБД используется FireBird, на другом MS SQL. Отправитель работает с FB, получатель с MS SQL. Когда отправитель регистрирует реплику, то он приводит ее к формату, понятному получателю. Отправитель обладает данными, получатель - форматом. Данные накладываются на предоставленный провайдором формат и получается реплика в нужном формате. Образно так. Конечно это все заложено глубоко в компоненты. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 17:34 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
авториспользуем подобную модель офф-лайновой синхронизации для распределенных систем. Конфигурация заключается в построении схемы от отправителя к получателю, т.е. каждый отправитель знает кому нужна та или иная информация из его системы и готовит соответствующие реплики сразу, в момент внесения изменений. По заданному расписанию работает специальный сервис, который связывается с получателем (Сервером приложений) и они между собой договариваются: один говорит что у него есть для получателя, другой отвечает сможет ли он принять ту или иную реплику. Если договорились и нет противопоказаний, то получатель (удаленный сервер приложений) принимает реплику и исполняет то, в ней указано. Не договорились - отказ. Т.е. как такового "сравнения" не существует. Насколько я понимаю, описана MSMQ в чистом виде.Чем не устроил стандартный вариант с любым форматом сообщений,настройкой резервных маршрутов,гарантированной доставкой?Лет 12 назад, делал синхронизацию MS SQL и Informics'а под Unix, на шнурке в 33К с постоянными обрывами связи, работало как часы.Наковырял все за неделю без шаманских практик ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 18:36 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVa Насколько я понимаю, описана MSMQ в чистом виде. Ну давайте сюда все существующие технологии: : 1. MSMQ 2. WebSphere 3. WebMethods 4. BizTalk 5. PeerDirect 6. SAP Exchange Чё забыли? А Oracle: :ORACLE ESB Apach -- ну как же без Apach... все? давайте всё в кучу - тока это НЕ ТО что ищет автор, Коллеги... Будьте бдительны ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 19:09 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Кстати посмотрите что предлагает Progress Software DataXtend RE - formely PeerDirect сегодня - у них очень интересное решение ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 19:21 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVaНасколько я понимаю, описана MSMQ в чистом виде.Чем не устроил стандартный вариант с любым форматом сообщений,настройкой резервных маршрутов,гарантированной доставкой? начать нужно с того чей стандартный... :) Не устоил тем, что описанная выше схема не просто передает сообщения, а выполняет определенные сообщением действия на на внешней системе, "руками" внешнего провайдера. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 19:33 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
авторКстати посмотрите что предлагает Progress Software DataXtend RE - formely PeerDirect сегодня - у них очень интересное решение Решение действительно интересное,но вряд ли оно заточено под их протоколы с нау-хау.Еще интересней будет стоимость лицензий. авторНе устоил тем, что описанная выше схема не просто передает сообщения, а выполняет определенные сообщением действия на на внешней системе, "руками" внешнего провайдера Подписчику MSQL нужно пришить только руки,а все остальное авторКонфигурация заключается в построении схемы от отправителя к получателю, т.е. каждый отправитель знает кому нужна та или иная информация из его системы и готовит соответствующие реплики сразу, в момент внесения изменений. По заданному расписанию работает специальный сервис, который связывается с получателем (Сервером приложений) и они между собой договариваются: один говорит что у него есть для получателя, другой отвечает сможет ли он принять ту или иную реплику. Если договорились и нет противопоказаний, то получатель (удаленный сервер приложений) принимает реплику и исполняет то, в ней указано совершенно лишнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 22:18 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVaПодписчику MSQL нужно пришить только руки,а все остальное а кто это такой и причем здесь он вообще? поясните плз... SeVaсовершенно лишнее. в этом всем меня, честно говоря, вводят в ступор заявления о том, что некоторая, работающая годами схема (модель, система) лишняя с предложением поменять на какого-то монстра, написать для него специального подписчика, написать для него специальные утилиты формирования сообщений и т.п. Почему-то аудитория форума обладает стойкой уверенностью в том, что системы разрабатываются с бухты-барахты, или еще лучше "с будуна", что никто не проводит никаких исследований, что не считаются бюджеты разработки и вообще все делается во дворе на коленке. А вот у них... Честно, не знаю как реагировать, поэтому - никак. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 22:35 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
p.s. SeVa, ни Вам лично предыдущее. Просто наблюдение. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 22:58 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Iscrafrm, Вы меня поняли совершенно превратно.Именно потому, что я не считаю Ваше ПО писанным на коленке,хотелось понять почему был выбран такой вариант при наличии готового решения.Доводилось работать и детально изучить самописку c гарантированной доставкой (требовалась поддержка NT и всех ведущих вендоров UNIX).Писали спецы высшей категории,затрачены были чел/годы,но по функционалу она уступала MC.Посему мне и казалось,что должны быть веские причины. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2009, 23:56 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
SeVa, я Вас понял, извините за то, что возможно я высказался несколько направленно. На самом деле все немного банальней. Уже была платформа, которая выполняла N%(близкий к 100) требуемой работы. Уже был транспорт, реализованные и отлаженные механизмы подготовки реплик, были готовы получатели и т.п. Необходимо было только организовать очередь и некоторые интерфейсы. Что и было сделано без привлечения дополнительного ПО, т.е. основная суть там не в очереди или транспорте, а в механизмах взаимодействия серверов. Эти механизмы уже работали, нужно было только вывести их за границы он-лайна. Если Вы обратили внимание на ролике... подобными репликами клиент общается и с сервером приложений в локальной сети, там специально показано окошко подобной реплики. Т.е это уже в базе платформы. А ТРАНЗИТ просто в офф-лайн режиме продолжает тоже общение за пределами локалки по заданному маршруту. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2009, 03:30 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
А у нас основной вопрос репликации ("кто же папа?" :) ), по возможности, решается архитектурно, протоколом взаимодействия: 1. Пользователь ресурса --Я ХОЧУ--> Владелец ресурса 2. Пользователь ресурса <--Я ДАЮ/Я НЕ ДАЮ-- Владелец ресурса Ну и естественно, владельцы по возможности локализованы около своих ресурсов. :) --- iscrafm ТРАНЗИТ связывается с провайдером соответствующего сервиса на удаленном App Server и общается с ним на том языке, который ему наиболее близок, без дополнительных преобразований. Если суть реплики заключается в обновлении БД, то зачем ее преобразовывать в XML-конвертик, отправлять, затем удаленный провайдер принимает конверт, преобразовывает в SQL и исполняет скрипт в своей СУБД. Просто лишние действия исключаются. Это все, наверняка, и модульную расширяемую структуру имеет? Для какого-то нового типа адресатов в схеме обменов можно новый какой-то... плагин? развернуть? 1. А как с т.з. администратора развертывание таких дополнительных модулей на живой работающей сети узлов происходит? 2. А как решаются проблемы общения с отправителями, которым нет полного доверия (есть риск получить от них троянский пакет)? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2009, 16:35 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Q1. А как с т.з. администратора развертывание таких дополнительных модулей на живой работающей сети узлов происходит? 2. А как решаются проблемы общения с отправителями, которым нет полного доверия (есть риск получить от них троянский пакет)? 1. регистрируется новое подключение, все. 2. Вы сейчас говорите о том, что в системе регистрируется учетная запись пользователя, который рассылает троянские пакеты. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2009, 16:58 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
2... Ну не настолько драматично (бывают же ошибки кодирования и администрирования обменивающихся систем, на которые накладываются ошибки пользователя), но принцип, кажется понял: вообще таких ситуаций не допускать. Правильно понял? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2009, 17:09 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
Q принцип, кажется понял: вообще таких ситуаций не допускать. Правильно понял? ситуация нереальная просто. это нужно на сервере приложений самостоятельно зарегистрировать провайдера, который будет в твоей же системе заниматься подрывной деятельностью. Из вне его создать просто невозможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2009, 17:30 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
А я вот как-то забыл кое кому ограничить доступ к определенной секции внутри реестра однородных документов. И этот кое-кто, при помощи пакетной обработки сменил статус как у доков нужной секции, так и у пары штук из ненужной. А та пара штук была недозаполнена. И пошла по схеме репликации... :) Хотя, в общем, конечно, стараемся исключать простреливание ноги не только в приемнике, но и в источнике тоже. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2009, 17:57 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
В сервисе iTransit есть один существенный минус при котором он становится бесполезным Он не может обеспечить двустороннюю репликацию при использовании динамических IP адресов филиалов Т.е. имея центральный сервер со статиком и филиалы с подключениями через местных провайдеров как правило выделяющих динамические адреса не получится сделать отправку данных на неизвестный адрес филиала из центрального офиса в данном случае хорошо было бы обеспечить двустороннюю репликацию в рамках одной сессии инициируемой филиалом ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2009, 12:24 |
|
Документы и книги по offline-синхронизации информационных сущностей.
|
|||
---|---|---|---|
#18+
xa, сервис iTransit - выталкивающий (push), так и есть. Ему нужно знать имя или адрес получателя пакета . В описанном Вами случае, если известен адрес центрального сервера, нужно просто забирать пакеты (pull). Такая ветка в штатном сервисе не интерпретируется. Но, в принципе, для реализации забора достаточно соединиться с провайдером центрального сервера, попросить у него выборку реплик "для себя", забрать файлы пакетов (LoadPublicFile) и выполнить в филиальной системе. Небольшой сценарий создать, все необходимые интерфейсы есть в наличии, да и примеры в самом Транзите. Если будут вопросы, помогу. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2009, 13:17 |
|
|
start [/forum/topic.php?all=1&fid=33&tid=1548548]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
others: | 8ms |
total: | 166ms |
0 / 0 |