Хорошие инструменты для синхронизации контента в тестовых / промежуточных / живых средах - PullRequest
2 голосов
/ 07 мая 2010

Я ищу рекомендации по инструментам автоматической синхронизации папок для автоматической синхронизации содержимого в наших трех средах.

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

В дальнейшем мы попросим их загрузить контент на промежуточный сервер, и мы бы хотели, чтобы какое-то программное обеспечение автоматически копировало файлы на тестовый и действующий серверы ЛИБО по расписанию ИЛИ по мере загрузки файлов.

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

На нашем веб-сайте есть ограниченное количество папок, которые мы хотим синхронизировать.В этих папках это все или ничего - мы хотим, чтобы папки были ТОЧНЫМИ дубликатами.Это должно сделать это довольно просто, и я думаю, что любое программное обеспечение, которое может синхронизировать папки, будет в порядке, за исключением того, что мы также хотели бы, чтобы программное обеспечение регистрировало изменения.(Это исключает простые файлы BATCH.)

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

Добавлено

Кроме того, я ДЕЙСТВИТЕЛЬНО Google сначала, но есть так много вариантов, меня интересует в основном знание того, что на самом деле работает хорошопротив того, что они говорят, работает, вот почему я спрашиваю здесь.

Добавлено Подробнее

Я забыл указать, что это серверы Windows.(Windows Server 2003, если быть точным) Извините.

Ответы [ 3 ]

1 голос
/ 07 мая 2010

В Linux лучше всего подходит инструмент rsync.

1 голос
/ 07 мая 2010

Если вы хотите сделать это по расписанию, я использовал SyncBackSE для этого - он будет синхронизировать несколько папок (или FTP-сайтов) в любом направлении, и, возможно, это то, что вы ищете. Однако это запланированная задача, и я не верю, что ее можно запустить по требованию (хотя, возможно, версия Pro поддерживает это).

0 голосов
/ 07 мая 2010

unison - хороший инструмент синхронизации, но поддерживает только две реплики за цикл. Чтобы синхронизировать три сайта, вам нужно выполнить A <-> B, B <-> C, A <-> C.

Я бы предложил использовать git. Сделайте репо на каждом сайте и автоматизируйте, используя git-add, git-rm и git-commit, чтобы зафиксировать в каждом репо текущее состояние среды. Автоматическое переключение между репозиториями по мере необходимости.

...