Показать сообщение отдельно
Старый 16.08.2010, 16:56   #28  
Reaper is offline
Reaper
Участник
1C
 
92 / 59 (2) ++++
Регистрация: 13.04.2010
Сейчас чуть разверну тему с технической стороны, коль скоро такой интерес возник.
Начнем с того, что как такового одного механизма для обмена нет. Есть два независимых механизма в платформе:
  1. Служба регистрации изменений
  2. Механизм сериализации объектов платформы и работы с XML

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

Второй механизм используется только для полных обменов. Сильная его сторона в том, что он делает выгрузку/загрузку с очень достойной скоростью (по сравнению с универсалкой, поясню ниже). В этом же и его минус - обмен может длиться 5 минут вместо 4-х часов, но на все время этого обмена блокируются физические таблицы службы регистрации изменений. А организованы они "в лоб" - на каждый узел репликации одна таблица. Блокировка накладывается исключительная на всю таблицу. В итоге получаем замирающую на время обмена базу.

Теперь об универсалке. Конфигурация "Конвертация данных" предоставляет технологию визуального конструирования правил репликации. Но механизмы работы с этими правилами, предоставляемые фирмой 1С, не используют механизма сериализации - запись XML осуществляется посредством WSH. Скорость обмена при таком подходе ниже в разы, особенно загрузка, т.к. платформа не считывает объект целиком, а создает его реквизит за реквизитом. Но с другой стороны, при таком подходе обращения к службе регистрации разбиваются на малые порции и длительность блокировок резко меньше. Кроме того, универсалка, вкупе с собственными алгоритмами работы со службой регистрации изменений, позволяет разработать абсолютно произвольную топологию обмена, а так же и правила преобразования данных и ограничения миграции. Справедливости ради скажу, что и при простой распределенке миграцию можно ограничить, но в типовых это сделано только в БП для обмена "по организации".

Имеем традиционную ситуацию, когда в платформе встроен в целом годный механизм, который в коробочных решениях используется бездарно.
За это сообщение автора поблагодарили: Raven Melancholic (2).