При организации совместной разработки в 1С для команды из нескольких человек, работающих удаленно через VPN-соединение, часто возникает вопрос о выборе архитектуры хранилища. Что предпочтительнее: оставить прямое подключение к файловому хранилищу по сетевому каталогу (SMB) или развернуть специализированную службу — сервер хранилища конфигураций 1С (crserver)?
Рассмотрим подробно преимущества и недостатки обоих подходов, проанализируем изменения в платформе 1С 8.3 по сравнению с 8.2, а также разберем, как сервер хранилища влияют на скорость, надежность и безопасность разработки.
Проанализируем сначала, с какими сложностями сталкивается команда при прямолинейном подключении к файлу хранилища через общий сетевой ресурс (шару) по VPN-каналу:
1cd. Если у одного из разработчиков произойдет обрыв VPN-соединения или сбой платформы в момент записи данных в сетевой файл хранилища, весь файл базы хранилища может получиться поврежденным. Restore из резервной копии приводит к потере несохраненного кода всей команды.tool_1cd.Использование специализированного сервера хранилища crserver кардинально меняет логику взаимодействия Конфигуратора с данными хранилища. Разберем ключевые выгоды от его внедрения.
При использовании crserver разработчики не имеют прямого доступа к файловой системе сервера, где лежит хранилище. Все операции выполняются непосредственно службой сервера хранилища. В случае сбоя сети у разработчика операция на сервере либо корректно завершается, либо откатывается, исключая порчу файла базы хранилища.
В отличие от платформы 8.2, где служба хранилища работала в строго однопоточном режиме, в платформе 8.3 сервис crserver умеет параллельно обрабатывать запросы пользователей, задействуя несколько ядер процессора. В ситуациях, когда несколько разработчиков одновременно запрашивают обновление конфигурации из хранилища или получают историю объектов, сервер распределяет нагрузку по процессорам. Это существенно сокращает время ожидания в очереди по сравнению с файловым вариантом.
Разберем основные аспекты безопасности при работе через службу crserver:
Для достижения максимальной эффективности при удаленной работе команды рекомендуем обратить внимание на следующие варианты организации инфраструктуры:
Сервер хранилища 1С можно опубликовать на веб-сервере (IIS или Apache). Это позволяет клиентам подключаться к хранилищу по протоколу HTTPS. Данный подход обладает следующими плюсами:
Если VPN-канал отличается нестабильностью или высоким пингом, наиболее эффективным решением станет размещение Конфигураторов и рабочих баз 1С на терминальном сервере (RDP), расположенном в одной локальной сети с сервером хранилища. В этом случае все файловые операции происходят внутри сверхбыстрой сети сервера, а по VPN передается только графический интерфейс.
Для крупных команд и сложных проектов хорошей альтернативой стандартному хранилищу 1С является переход на среду разработки 1C:EDT с использованием распределенной системы контроля версий Git. Это полностью снимает проблему блокировок объектов и позволяет использовать полноценное ветвление кода и автоматизированные проверки (CI/CD).
Отвечая на вопрос «нужен ли сервер хранилища 8.3?»: да, однозначно стоит установить и настроить службу crserver. Даже для небольшой команды из 5–7 человек переход с файлового хранилища на серверный вариант кардинально повышает надежность хранения данных, защищает исходный код и устраняет взаимные блокировки при синхронных запросах разработчиков.