powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Распределенная работа над документом
8 сообщений из 8, страница 1 из 1
Распределенная работа над документом
    #34294734
shelk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
написал небольшу заметку:
Распределенная работа над документом

Может кому поможет избежать граблей при реализации ИС с несколькими БД


-------
http://proactive-soft.ru
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34294986
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дочитал до этого
авторГлубоко вдаваться в высокие понятия проектирования не будем
и стало скучно.
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34295007
shelk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ИзопропилДочитал до этого
авторГлубоко вдаваться в высокие понятия проектирования не будем
и стало скучно.
:) чтож популярным писателем мне не стать. жалко
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34295259
gybson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не понятно о каких граблях речь
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34295298
shelk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gybsonне понятно о каких граблях речь

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

как и написано, решение вполне очевидное, но приходилось видеть, что в реальных системах этим конфликтом принебрегают.
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34297700
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Много лишних слов.

Локальная работа - частный случай жизненного цикла документа и в плане распределённой работы ничего не даёт.
Нет документа - это не состояние документа, которого нет, а начальное и финальное состояние в терминах UML. К стати, в общем случе документ может быть уничтожен на любом этапе ЖЦ.

Распределенная работа - ближе к телу, но эти состояния ортогональны локальным состояниям, хотя и могут иметь ограничительные связи с локальными состояниями.

Алгоритм отзыва впринципе интересен, но не является единственным. На практике проще указывать не состояние документа, а владельца документа (владелец, это БД). Чтобы не возник конфликт, нового владелеца нужно изменить в рамках распределённой транзакции в локальной БД и в БД, которая по локальным данным является владельцем. Во многих СУБД распределённые транзакции реализованы в ядре.
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34297823
shelk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mcureenabМного лишних слов.

Локальная работа - частный случай жизненного цикла документа и в плане распределённой работы ничего не даёт.
Нет документа - это не состояние документа, которого нет, а начальное и финальное состояние в терминах UML. К стати, в общем случе документ может быть уничтожен на любом этапе ЖЦ.

Распределенная работа - ближе к телу, но эти состояния ортогональны локальным состояниям, хотя и могут иметь ограничительные связи с локальными состояниями.

Алгоритм отзыва впринципе интересен, но не является единственным. На практике проще указывать не состояние документа, а владельца документа (владелец, это БД). Чтобы не возник конфликт, нового владелеца нужно изменить в рамках распределённой транзакции в локальной БД и в БД, которая по локальным данным является владельцем. Во многих СУБД распределённые транзакции реализованы в ядре.

Согласен с общими замечаниями.
Про вариант смены владельца в распределенной транзакции: такой вариант может иметь место, когда БД связаны жестко (например, через linked server для MS SQL, или клиент открывает транзакцию на двух БД).
Здесь же предлагается вариант в случае же более слабой связи (стандартная репликация СУБД, свой вариант обмена данными), БД могут работать относительно независимо.
...
Рейтинг: 0 / 0
Распределенная работа над документом
    #34298984
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shelkПро вариант смены владельца в распределенной транзакции: такой вариант может иметь место, когда БД связаны жестко (например, через linked server для MS SQL, или клиент открывает транзакцию на двух БД).

Что значит жёстко? Распределённая транзакция может выполняться используя обмен асинхронными сообщениями в том числе с отложенной доставкой. Собственно ты предложил реализацию такого алгоритма на уровне приложения БД.
Примером может быть подписание многостороннего договора людьми, которые общаются только с помощью почтовой связи.
ИМХО, в современном мире лучше вкладывать деньги в надёжную связь и использовать готовые решения, чем делать программы, которые могут работать с плохой связью.

shelkЗдесь же предлагается вариант в случае же более слабой связи (стандартная репликация СУБД, свой вариант обмена данными), БД могут работать относительно независимо.

Так бы и написал про область применения. В любом случае для репликации изменений удалённые узлы должы время от времени связываться и выполнять распределённые транзакции. Так почему не оставить эту связь постоянной?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Распределенная работа над документом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]