Рейтинг:0

Как строго сериализовать репликацию одной папки с помощью репликации Windows DFS?

флаг ss

У меня есть два местоположения A+B, и мне нужно обработать один специальный каталог между этими ветвями, используя репликацию Windows DFS следующим образом: все записи в этот каталог A должны быть извлечены B. Все удаления в этом каталоге B должны быть снова нажал на А. В конце концов, это просто извлечение всего содержимого из A в B с опустошением в A и B в какой-то момент.

Важно то, что каталог является интерфейсом файловой системы какого-то специального приложения. Это приложение специально работает только на узле B, а узел A создает данные для этого приложения. DFS используется для надежной передачи этих данных из A в B.

Поскольку это интерфейс файловой системы, он должен следовать некоторым соглашениям, чтобы приложение в B знало, когда оно может получить доступ ко всем файлам. Это соглашение заключается в том, что перед созданием всех данных создается специальный файл блокировки, а когда все данные созданы, файл блокировки удаляется. Удаление файла блокировки означает, что приложение на хосте B может свободно обрабатывать данные по своему усмотрению. Конечно, по сравнению с другими передаваемыми данными этот файл блокировки действительно очень мал, в то время как размер всех остальных данных теоретически может составлять сотни мегабайт.Таким образом, для надежной работы с DFS при репликации необходимо учитывать порядок операций файловой системы.

Из того, что я до сих пор читал о DFS, он может передавать файлы не работает:

Реплицирует ли репликация DFS файлы в хронологическом порядке?

Нет. Файлы могут быть реплицированы не по порядку.

ОТО, это отслеживает файлы по ID уже, и идентификатор файла блокировки будет ниже, чем у других файлов.

Что произойдет, если я переименую файл?

Репликация DFS переименовывает файл на всех других членах группы репликации во время следующая репликация. Файлы отслеживаются по уникальному идентификатору, поэтому переименование файла и перемещение файла в реплике не влияет на способность репликации DFS реплицировать файл.

Кроме того, кажется, есть некоторые настройки, касающиеся параллельные загрузки, который в худшем случае может быть снижен до 1. Хотя само по себе это, конечно, не может гарантировать строгого порядка файловых операций, как мне нужно. Файл блокировки можно просто удалить между передачей двух больших других файлов.

Как обрабатываются одновременные репликации?

На каждую реплицируемую папку приходится один менеджер обновлений. Менеджеры обновлений работают независимо друг от друга.

Было бы здорово иметь какой-то режим работы или аналогичный DFS с использованием Журнал изменений Windows и следуя порядку этих событий в исходной папке для репликации. это должно гарантировать, что DFS создает и удаляет файл блокировки как первую и последнюю операции, как это было сделано в исходной папке.

Итак, есть ли способ сделать файловые операции строго упорядоченными в DFS, чтобы их можно было использовать с интерфейсами на основе файловой системы?

Спасибо!

Рейтинг:2
флаг ng

Нет, репликация DFS не поддерживает это; он асинхронный по своей структуре, и нет никакого способа заставить его выполнять синхронную репликацию или гарантировать соблюдение порядка операций.


Я не знаю внутренней работы вашего приложения, но было бы намного проще и безопаснее просто использовать общий сетевой ресурс, к которому могут получить доступ оба сервера. Или, если сервер Б очень хочет найти данные на локальном диске, просто создайте там общий ресурс, на который сервер А сможет писать.

флаг ss
Используемое соединение нельзя считать стабильным, и заказчику требуется управление полосой пропускания в используемом каталоге. Все это легко доступно моему клиенту с другими поддерживаемыми папками DFS-R, поэтому он подумал об использовании этого и в этом случае.
Massimo avatar
флаг ng
К сожалению, DFSR определенно не подходит для этой работы.

Ответить или комментировать

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