Администрирование · 12 мин
Клиент-серверный режим работы 1С: устройство, отличия от файлового и переход
Что такое клиент-серверный режим работы 1С, чем он отличается от файлового, какие СУБД поддерживаются, как перейти на него и проверить результат.
Клиент-серверный режим — это вариант работы 1С:Предприятия, при котором база данных хранится не в файле на диске, а в отдельной системе управления базами данных (СУБД), а между пользователями и данными работает сервер 1С:Предприятия. Пользовательские компьютеры (клиенты) не читают данные напрямую: они обращаются к серверу, сервер выполняет запросы к СУБД и возвращает результат. Такая трёхзвенная архитектура «клиент — сервер 1С — СУБД» кардинально меняет надёжность, производительность и возможности масштабирования системы.
Главная причина перехода на клиент-серверный режим — рост. Когда в файловой базе одновременно работают десятки пользователей, объём данных измеряется десятками гигабайт, а отчёты строятся по полчаса, файловый режим становится узким местом. Клиент-серверный вариант снимает ключевые ограничения: СУБД умеет блокировать отдельные записи вместо целых таблиц, параллельно обрабатывать запросы и работать с большими объёмами данных.
При этом клиент-серверный режим — не бесплатное улучшение. Он требует отдельного сервера (или нескольких), лицензии на сервер 1С:Предприятия, лицензии на СУБД (если она коммерческая) и квалифицированного администрирования. Для небольшой компании с тремя-пятью пользователями такой переход часто не оправдан.
Как устроена трёхзвенная архитектура 1С
В клиент-серверном режиме участвуют три компонента. Первый — клиентское приложение: тонкий клиент, толстый клиент или веб-клиент через браузер. Клиент отвечает только за интерфейс и часть прикладной логики, он не знает, где физически лежат данные.
Второй компонент — кластер серверов 1С:Предприятия. Это служба (агент сервера), которая принимает соединения от клиентов, выполняет серверный код конфигурации, управляет сеансами, фоновыми заданиями и транзакциями. Кластер может состоять из нескольких рабочих серверов, между которыми распределяется нагрузка.
Третий компонент — СУБД, где фактически хранятся данные: справочники, документы, регистры. Сервер 1С формирует SQL-запросы, СУБД их выполняет и возвращает результат. Именно СУБД обеспечивает целостность данных, журналы транзакций, резервное копирование и параллельный доступ.
Чем клиент-серверный режим отличается от файлового
В файловом режиме вся база — это один файл 1Cv8.1CD в сетевой папке, и каждый клиент читает и пишет в него напрямую. Блокировки в таком режиме накладываются на целые таблицы: пока один пользователь проводит документ, другие ждут. В клиент-серверном режиме блокировки управляются СУБД на уровне отдельных записей, поэтому пользователи редко мешают друг другу.
| Параметр | Файловый режим | Клиент-серверный режим |
|---|---|---|
| Хранение данных | Файл 1Cv8.1CD в общей папке | База данных в СУБД (MS SQL, PostgreSQL и др.) |
| Блокировки | На уровне таблиц | На уровне записей, управляемые |
| Одновременные пользователи | Комфортно до ~10–15 | Десятки и сотни |
| Отказоустойчивость | Минимальная, риск повреждения файла | Кластер, резервное копирование средствами СУБД |
| Регламентные задания | Только из запущенного сеанса | Выполняются на сервере независимо от клиентов |
| Требования | Файловый сервер или ПК | Сервер 1С, СУБД, лицензии, администрирование |
Ещё одно принципиальное отличие — выполнение кода. В клиент-серверном режиме прикладной код явно делится на клиентский и серверный, и разработчику приходится учитывать это разделение. Зато тяжёлые операции — расчёты, проведение больших документов, построение отчётов — выполняются на мощном сервере, а не на рабочем месте пользователя.
Какие СУБД поддерживает платформа 1С
Платформа 1С:Предприятие работает с несколькими СУБД. Наиболее распространены Microsoft SQL Server и PostgreSQL (в том числе сборка Postgres Pro, адаптированная под 1С). Также поддерживаются IBM DB2 и Oracle Database, но они встречаются заметно реже и требуют более дорогого сопровождения.
Сравнение вариантов СУБД
Подходит большинству внедрений: бесплатная версия снижает стоимость, есть сборки, оптимизированные под 1С. Ограничение — требует грамотной настройки параметров под нагрузку.
Удобен в инфраструктуре Windows, привычные инструменты администрирования и резервного копирования. Ограничение — стоимость лицензий на сервер и клиентские доступы.
Оправданы в крупных организациях, где эти СУБД уже используются и есть штатные администраторы. Для типового внедрения избыточны и дороги.
Выбор СУБД влияет и на лицензирование 1С: для работы с некоторыми СУБД требуются соответствующие лицензии на сервер 1С:Предприятия. Перед покупкой стоит сверить актуальные условия лицензирования у официального дистрибьютора, так как варианты поставок и их стоимость периодически меняются.
Когда переход оправдан, а когда нет
Есть понятные признаки того, что файловый режим исчерпал себя: жалобы пользователей на «подвисания» при одновременной работе, ошибки блокировок при проведении документов, медленное формирование отчётов, размер файла базы в десятки гигабайт, необходимость круглосуточной работы и выполнения регламентных заданий ночью без включённых пользовательских компьютеров.
Как выбрать действие
Обратная ситуация тоже встречается: небольшая фирма переходит на клиент-серверный режим «для надёжности», но не имеет специалиста, который будет обслуживать СУБД. В результате резервные копии не настроены, журналы транзакций переполняют диск, и система работает хуже, чем файловая. Переход без ресурсов на сопровождение создаёт больше рисков, чем снимает.
Как перейти с файлового режима на клиент-серверный
Переход выполняется через выгрузку и загрузку базы и не требует изменения конфигурации, если она корректно написана. Типовые конфигурации 1С изначально рассчитаны на оба режима работы.
- 1Установите и настройте СУБД (PostgreSQL или MS SQL Server) на отдельном сервере или мощной виртуальной машине
- 2Установите сервер 1С:Предприятия той же версии платформы, что и клиентские приложения, и запустите агент сервера
- 3Сделайте полную выгрузку файловой базы в файл .dt через конфигуратор (Администрирование → Выгрузить информационную базу)
- 4В консоли кластера серверов создайте новую информационную базу, указав тип СУБД, сервер баз данных и имя базы
- 5Откройте созданную базу конфигуратором и загрузите файл .dt (Администрирование → Загрузить информационную базу)
- 6Настройте резервное копирование средствами СУБД и права доступа, затем подключите пользователей к новой базе
- 7Проверьте работу ключевых операций: проведение документов, отчёты, обмены данными, регламентные задания
После переноса добавьте базу в список информационных баз на рабочих местах пользователей. Подключение указывается через имя сервера 1С и имя информационной базы в кластере, а не через путь к файлу. Старую файловую базу переведите в режим «только чтение» или закройте к ней доступ, чтобы никто случайно не продолжил в ней работать — раздвоение данных потом очень трудно свести.
Как проверить, что система работает правильно
Сам факт запуска базы в клиент-серверном режиме ещё не означает, что всё настроено хорошо. Типичные проблемы после перехода — медленные запросы из-за отсутствия обслуживания СУБД (обновления статистики, перестроения индексов), переполнение диска журналом транзакций в MS SQL при полной модели восстановления без регулярного бэкапа журнала, и неоптимальные настройки памяти PostgreSQL.
Как проверить результат
Проводится быстро, ошибок блокировок нет
Ошибки «Конфликт блокировок» или ожидание на блокировках — проверяйте код и настройки СУБД
Выполняются по расписанию на сервере без запущенных клиентских сеансов
Задания не стартуют — проверяйте настройки кластера и права служебной учётной записи
Копии создаются по расписанию средствами СУБД, тестовое восстановление проходит
Копий нет или восстановление не проверялось — данные фактически не защищены
Стабильное, журналы транзакций контролируются
Диск быстро заполняется — настройте усечение журнала и регламентное обслуживание
Полезно периодически выполнять тестирование и исправление информационной базы, а также штатные процедуры обслуживания СУБД. Для диагностики производительности у платформы есть технологический журнал и счётчики, которые помогают найти медленные запросы — но их интерпретация требует опыта, и при серьёзных проблемах с производительностью разумно привлекать специалиста по администрированию 1С.
Частые вопросы
Можно ли вернуться с клиент-серверного режима обратно на файловый?
Да, технически это делается тем же способом: выгрузка базы в файл .dt через конфигуратор и загрузка в новую файловую базу. Ограничений со стороны платформы нет, но сам факт возврата обычно означает, что нагрузка мала — убедитесь, что размер базы и число пользователей позволяют комфортно работать в файловом режиме.
Нужно ли менять конфигурацию при переходе на клиент-серверный режим?
Типовые конфигурации 1С работают в обоих режимах без доработок. Проблемы возможны только в самописных или сильно доработанных решениях, где код не рассчитан на разделение клиентской и серверной частей. Такие места выявляются тестированием после перехода.
Сколько пользователей выдерживает клиент-серверный режим?
Точного универсального числа нет: предел зависит от конфигурации, характера нагрузки, мощности серверов и настройки СУБД. Правильно спроектированная система обслуживает сотни одновременных пользователей, а кластер серверов позволяет распределять нагрузку между несколькими машинами.
Какие лицензии нужны для клиент-серверного режима?
Понадобится лицензия на сервер 1С:Предприятия, клиентские лицензии на рабочие места (те же, что и в файловом режиме), а также лицензии на СУБД, если используется коммерческий продукт вроде Microsoft SQL Server. Условия поставок периодически меняются, поэтому актуальный состав лицензий уточняйте у дистрибьютора.
Где должны находиться сервер 1С и сервер СУБД — на одной машине или на разных?
Для небольших нагрузок допустимо размещение на одном физическом сервере или одной виртуальной машине. При росте нагрузки их разносят на разные серверы, чтобы процессы СУБД и сервера 1С не конкурировали за память и процессор. Решение принимается по фактической нагрузке, а не заранее «про запас».
Работает ли веб-клиент 1С в файловом режиме?
Работает, но с ограничениями: веб-клиент в файловом режиме требует публикации через веб-сервер и подходит для небольшого числа пользователей. Полноценный веб-доступ для многих пользователей практически всегда строится на клиент-серверной архитектуре.
Что важно запомнить
Клиент-серверный режим 1С — это работа через сервер 1С:Предприятия и СУБД вместо прямого доступа к файлу базы. Он нужен при большом числе пользователей, больших объёмах данных и требованиях к надёжности, но требует отдельной инфраструктуры, лицензий и регулярного администрирования. Переход выполняется через выгрузку-загрузку .dt, а обязательное условие успеха — резервные копии и тестовый период работы новой системы.