К статье
Практический материал

Администрирование · 12 мин

Клиент-сервер 1С: что это такое и когда он нужен

Клиент-сервер 1С — что это такое, как работает связка платформы и СУБД, чем отличается от файлового режима и когда переход оправдан.

Клиент-серверный режим — один из двух способов развёртывания информационной базы 1С:Предприятие. В отличие от файлового режима, где вся база хранится в одном файле 1Cv8.1CD на локальном диске или сетевой папке, в клиент-серверном варианте данными управляет отдельная система управления базами данных — СУБД. Между пользователем и данными появляется промежуточное звено — сервер 1С:Предприятия, который принимает запросы клиентских приложений и транслирует их в запросы к СУБД.

Такая архитектура решает главную проблему файлового режима: конкурентный доступ. Когда с одним файлом одновременно работают несколько пользователей, платформа вынуждена блокировать целые таблицы, из-за чего растут очереди ожидания и ошибки «конфликт блокировок». СУБД умеет блокировать данные на уровне отдельных записей и обрабатывать параллельные транзакции, поэтому клиент-серверный режим становится стандартом для компаний с 20–30 и более активными пользователями.

Важно понимать: переход на клиент-сервер — это не «ускорение 1С» само по себе, а изменение способа хранения и обработки данных со своими требованиями к инфраструктуре, лицензиям и квалификации администраторов. Ниже разберём, как устроена эта архитектура, когда она оправдана и как безопасно выполнить миграцию.

Как устроена клиент-серверная архитектура 1С

В клиент-серверном режиме участвуют три уровня. Первый — клиентское приложение: тонкий клиент, толстый клиент или веб-клиент через браузер. Второй — сервер 1С:Предприятия, который формирует кластер из одного или нескольких рабочих серверов. Третий — сервер СУБД, где физически хранятся таблицы информационной базы.

Когда пользователь проводит документ, клиент отправляет запрос на сервер 1С. Сервер выполняет код конфигурации, формирует SQL-запросы и передаёт их в СУБД. СУБД изменяет данные и возвращает результат по цепочке обратно. Благодаря этому тяжёлые вычисления и работа с большими выборками происходят на сервере, а не на компьютере пользователя.

Кластер серверов 1С может включать несколько рабочих процессов (rphost), между которыми распределяются сеансы пользователей. Это даёт два практических эффекта: при аварийном завершении одного процесса остальные продолжают работу, а нагрузка распределяется между ядрами процессора и серверами.

Число активных пользователейДо 10–15 — обычно достаточно файлового режима

Считайте одновременно работающих, а не общее число учётных записей

Размер базыДесятки гигабайт — аргумент за клиент-сервер

Файл 1Cv8.1CD больше 5–10 ГБ часто работает нестабильно

Ошибки блокировокЧастые конфликты при параллельной работе

Проверьте технологический журнал и жалобы пользователей

Требования к отказоустойчивостиНужна работа 24/7 без остановок

Файловый режим не поддерживает кластеризацию и резервирование

Чем клиент-сервер отличается от файлового режима

Различия между режимами касаются не только места хранения данных, но и надёжности, масштабируемости и требований к обслуживанию. Таблица ниже помогает сопоставить ключевые параметры.

ПараметрФайловый режимКлиент-серверный режим
Хранение данныхОдин файл 1Cv8.1CDБаза в СУБД (MS SQL, PostgreSQL и др.)
Одновременные пользователиОбычно до 10–15Десятки и сотни
БлокировкиНа уровне таблицНа уровне записей (управляемые)
ОтказоустойчивостьОтсутствуетКластер серверов, резервирование СУБД
Резервное копированиеКопирование файла при остановке работыСредства СУБД, горячее копирование
ЛицензииТолько клиентскиеКлиентские + лицензия на сервер 1С + лицензии СУБД
АдминистрированиеМинимальноеТребуется администратор СУБД и сервера 1С

Обратите внимание на строку про лицензии: клиент-серверный режим требует отдельной лицензии на сервер 1С:Предприятия, а при использовании коммерческой СУБД — ещё и лицензий на неё. Это существенная статья расходов, которую нужно учитывать при принятии решения.

Когда переход на клиент-сервер оправдан, а когда нет

Переход имеет смысл, когда одновременно работает больше 15–20 пользователей, база выросла до размеров, при которых файловый режим работает нестабильно, регулярно возникают конфликты блокировок при параллельном проведении документов, либо появляются требования к бесперебойной работе и регламентному резервному копированию без остановки системы.

Переход не оправдан, если в базе работают 3–5 человек, объём данных невелик, а основная жалоба — «медленно работает 1С». В такой ситуации проблема чаще кроется в неоптимальном коде конфигурации, слабом компьютере пользователя или перегруженной сети, и клиент-сервер её не решит, а только добавит затрат на инфраструктуру и сопровождение.

Маршрут решения

Как выбрать действие

До 10 пользователей и база до нескольких гигабайтОставайтесь на файловом режиме, оптимизируйте конфигурацию и оборудование
15–30 пользователей и растущие жалобы на блокировкиПланируйте переход на клиент-сервер, начните с PostgreSQL для экономии на СУБД
Требуется работа филиалов через интернетРассмотрите клиент-сервер с веб-клиентом или веб-сервером для публикации базы
База критична и простой недопустимКлиент-сервер с кластером и регулярным резервным копированием средствами СУБД

Какие СУБД поддерживает платформа 1С

Платформа 1С:Предприятие официально работает с несколькими СУБД: Microsoft SQL Server, PostgreSQL (включая специальную сборку Postgres Pro), Oracle Database и IBM Db2. На практике чаще всего выбирают между MS SQL Server и PostgreSQL.

MS SQL Server удобен администраторам Windows-инфраструктуры: привычные инструменты, интеграция с доменом, развитые средства мониторинга. Его ограничение — стоимость лицензий при большом числе ядер или пользователей. PostgreSQL распространяется бесплатно и заметно снижает стоимость внедрения, но требует навыков администрирования Linux или аккуратной настройки под Windows.

Сравнение вариантов СУБД

PostgreSQL

Бесплатная СУБД, подходит для большинства внедрений. Ограничение: требует квалификации администратора, тонкая настройка конфигурации обязательна

MS SQL Server

Удобен в Windows-инфраструктуре, развитые средства диагностики. Ограничение: стоимость лицензий при росте числа ядер

Oracle / IBM Db2

Применяются в крупных организациях с существующей инфраструктурой этих вендоров. Для типового внедрения избыточны

Как выполнить переход с файлового режима на клиент-сервер

Миграция выполняется через выгрузку информационной базы в файл .dt и последующую загрузку в новую базу на сервере. Сама процедура технически проста, но требует подготовки инфраструктуры и обязательного тестирования.

Порядок миграции
  1. 1
    Установите и настройте сервер СУБД и сервер 1С:Предприятия, проверьте сетевую связность между ними
  2. 2
    Создайте резервную копию файловой базы и проверьте её восстановление
  3. 3
    Выгрузите базу в файл .dt через конфигуратор (Администрирование → Выгрузить информационную базу)
  4. 4
    Создайте новую информационную базу в консоли кластера серверов 1С с указанием параметров СУБД
  5. 5
    Загрузите файл .dt в новую базу через конфигуратор
  6. 6
    Выполните тестирование и исправление, проверьте права пользователей и работу регламентных заданий
  7. 7
    Проведите опытную эксплуатацию с несколькими пользователями, затем переключите всех

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

Настройка и обслуживание после перехода

Клиент-серверная 1С требует регулярного обслуживания, которого файловый режим не предполагал. Для СУБД необходимы регламентные операции: обновление статистики, перестроение индексов, контроль роста журнала транзакций. Без этого производительность со временем деградирует даже на мощном оборудовании.

Резервное копирование теперь выполняется средствами СУБД и может идти без остановки работы пользователей — это одно из главных преимуществ режима. Настройте расписание полных и разностных копий и периодически проверяйте восстановление на тестовом сервере: копия, которая не проверялась восстановлением, не считается надёжной.

Контрольные точки

Как проверить результат

Подключение пользователей
Норма

База открывается через сервер 1С, в списке баз указан сервер, а не путь к файлу

Тревожный признак

Пользователи по-прежнему открывают старую файловую копию и вносят туда данные

Регламентные задания
Норма

Выполняются на сервере по расписанию, видны в консоли заданий

Тревожный признак

Задания не стартуют или завершаются с ошибками после миграции

Производительность
Норма

Проведение документов и отчёты работают не медленнее, чем до перехода

Тревожный признак

Заметные задержки — проверяйте настройки СУБД и план запросов

Резервные копии
Норма

Копия создаётся по расписанию и успешно восстанавливается на тестовом сервере

Тревожный признак

Копии нет или восстановление не проверялось

Типичные ошибки при переходе и эксплуатации

Типичные ошибки
01
Размещение сервера 1С и СУБД на одном слабом сервере — конкуренция за память сводит выигрыш к нулю
02
Настройки СУБД «по умолчанию» — стандартные параметры памяти и параллелизма не рассчитаны на нагрузку 1С
03
Отсутствие регламентного обслуживания СУБД — через несколько месяцев производительность падает из-за устаревшей статистики и фрагментации индексов
04
Продолжение работы в старой файловой копии частью пользователей — данные расходятся, и их приходится сводить вручную
05
Экономия на тестировании — ошибки обмена, отчётов и прав доступа обнаруживаются уже в рабочей эксплуатации

Отдельная ошибка — ожидание, что клиент-сервер автоматически ускорит медленные отчёты и проведение документов. Если конфигурация содержит неоптимальные запросы, они останутся неоптимальными и в СУБД. Перед миграцией полезно провести аудит производительности и устранить явные узкие места в коде.

Итог

Что важно запомнить

Клиент-сервер 1С — режим, где данные хранятся в СУБД, а сервер 1С связывает её с пользователями. Он нужен при росте числа пользователей, объёма базы и требований к надёжности. Переход выполняется через выгрузку и загрузку .dt, требует лицензий, настройки СУБД и постоянного администрирования.

Частые вопросы о клиент-серверном режиме 1С

Можно ли вернуться с клиент-сервера обратно на файловый режим?

Да, обратный переход выполняется тем же способом: база выгружается из конфигуратора в файл .dt и загружается в новую файловую базу. Ограничение одно — файловый режим имеет ограничения по объёму отдельных таблиц, поэтому очень большая база может физически не поместиться в файловый формат.

Обязательно ли покупать MS SQL Server для клиент-сервера?

Нет. Платформа поддерживает PostgreSQL, который распространяется бесплатно, включая сборку, адаптированную для 1С. Для большинства средних внедрений этого достаточно. MS SQL Server выбирают, когда в компании уже есть лицензии и администраторы с опытом работы с этой СУБД.

Нужна ли отдельная лицензия на сервер 1С?

Да. Для работы клиент-серверного варианта требуется лицензия на сервер 1С:Предприятия в дополнение к клиентским лицензиям. Существуют версии сервера для x86-64 и более доступный вариант для 32-разрядных систем с ограничениями. Точные условия лицензирования уточняйте у официального партнёра 1С.

Ускорит ли клиент-сервер работу 1С для пяти пользователей?

Скорее всего, нет. При малом числе пользователей файловый режим на быстром диске часто работает не медленнее. Выигрыш клиент-сервера проявляется при параллельной нагрузке и больших объёмах данных. Для маленькой команды разумнее вложиться в оптимизацию конфигурации и оборудование рабочих мест.

Можно ли разместить сервер 1С и СУБД на одном компьютере?

Технически можно, и для небольших внедрений это распространённая практика. Главное — выделить достаточно оперативной памяти обоим компонентам и ограничить потребление памяти СУБД, чтобы она не вытесняла рабочие процессы сервера 1С. При росте нагрузки компоненты разносят на разные серверы.

Что делать, если после миграции не работают регламентные задания?

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