MyWackoSite: Chilim/ЗаметкиПоПроекту ...

Home Page | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация | Вход:  Пароль:  
По новой ветке:
  1. Разделение на API и реализацию
  2. Полнота API 
  3. Дробление на пакеты, создание конфигураторов, фабрик и т.д.
  4. Разработка механизма частичной репликации (вероятно, создание фильтров на RSS)
  5. Менеджмент – отдельная вещь, относящаяся к реализации. Но очень и очень хорошая вещь, нам её надо хорошо развить.

Раз с xwiki постоянные проблемы, стоит параллельно сделать небольшое приложение для демонстрации работы репликатора (чтобы хоть что-то было показать)

Мысли вслух:

 
Файлов нет. [Показать файлы/форму]
Комментарии [Скрыть комментарии/форму]
> А может, репликация будет протекать транзакцией – оборвалась – начинаем сначала (и передаем объекты еще раз)

Руки поотрываю :) Транзакцией должна быть передача только каждого отдельного документа. Иначе по ненадежному каналу есть шанс не закончить репликацию никогда.

-- FatBrother (2008-10-17 02:07:10)

Хорошо, передавать их еще раз не будем, но и в базу их лучше не класть, а то ведь действительно, получится, как с репликацией строк – книгу с новым автором сохранили, а вот самого автора нам не дали. В таком случае нужен кеш на уровне Layer'a который по сигналу будет отправляться в базу. Связь оборвалась – кеш не сохраняем, но и не скидываем, начинаем повторную репликацию и т.д, пока нам не отдатут все объекты, вот тогда делаем коммит. В каком-то смысле тоже транзакция.

-- ReplicationProject (2008-10-17 09:13:40)

Так тоже нельзя. Потому что опять-таки если связь легла надолго, все объекты нам могут не отдать до нашей перезагрузки.
Правильнее переделать бизнес-логику приложения, чтобы она не дурела, если некоторых связанных объектов нет.
Для того, чтобы стало понятнее, о чем речь, представьте себе ситуацию, когда периодичность репликации два дня, а время репликации три часа (канал медленный, данных много).

-- FatBrother (2008-10-17 09:56:53)

Ваша взяла :) Забываю эту мысль.

-- ReplicationProject (2008-10-17 10:32:32)