Настройка обмена РИБ через RSYNC
Поработав полгода на технологии обмена РИБ 1С через FTP (подробности тут), было решено перейти на более совершенную технологию передачи данных, более устойчивую к плохим каналам связи, и с расширенными возможностями - Rsync (подробности тут). Данная программа позволяет не просто докачивать файлы, наподобие FTP клиентов, а передавать побайтовые изменения файлов через сеть. Также эта программа позволяет делать компрессию передаваемых данных "на лету". Это позволяет потенциально минимизировать трафик до неприлично маленьких значений.
Соответственно надо для начала, как и тут, создать первоначальный обмен данными между клиентом и сервером в отдельной папке.
На сервере надо:
Скачать файл servobmen.7z и распаковать. Там будет папка обмена для файлов 1С, и скрипт запуска 1С.
Скачать файл server_rsync_install.7z. Установить программу cwRsyncServer_4.1.0_Installer.exe, и затем в путь установки (обычно это "C:\Program Files\ICW\") заменить файлы из аналогичной папки из архива. Там находятся базовые настройки RSYNC для сервера. При желании - изменить логины/пароли передачи данных.
Изменить настройки 1С для новой папки обмена, и Важно! - выключить компрессию выгружаемых файлов обмена! Теперь 1С будет выгружать файлы в формате .xml
Открыть порт 873 для службы Rsync.
Сделать в планировщике задач ежечасный запуск с 7:00 скрипта 1cobmen.cmd
На клиенте надо:
Скачать файл Client_obmen.7z и распаковать в диске C: (пути можно легко менять в настройках при необходимости).
В скрипте testver.vbs подправить пути к программе 1С при необходимости.
Изменить настройки в скриптах, особенно в varis.cmd
Настроить в 1С экспорт и импорт РИБ в новую папку c:\obmen\done. Выключить везде компрессию данных!
Сделать в планировщике задач ежечасный запуск с 7:30 скрипта startdownload.cmd
Соответственно это решение позволяет повысить скорость и надежность процесса обновления РИБ 1С до невиданных высот. Из-за отключенной компрессии, забирается меньше ресурсов, как на сервере, так и на клиенте. Если канал связи слабый, и клиент не успевает скачать 500мб файл с сервера, и сервер успевает выложить обновленный файл, то клиент докачивает из такого файла только изменения.
Внимание! Передача логинов/паролей и данных в вышеприведенном решении производится в открытом виде, и конечно могут быть перехвачены. Для полной конфиденциальности надо шифровать трафик сторонними решениями, например VPN.