Администрирование · 13 мин
Сервер 1С: что это и как работает клиент-серверная архитектура
Сервер 1С — что это такое, зачем нужен кластер серверов 1С:Предприятие, чем клиент-серверный режим отличается от файлового и как выбрать архитектуру для компании.
Сервер 1С — это программный компонент платформы «1С:Предприятие», который обеспечивает работу системы в клиент-серверном режиме. Вместо того чтобы каждый компьютер пользователя напрямую обращался к файлам базы, все запросы проходят через сервер приложений 1С, а тот взаимодействует с системой управления базами данных (СУБД) — MS SQL Server, PostgreSQL, Oracle или IBM Db2.
Такая архитектура нужна там, где с одной информационной базой одновременно работают десятки или сотни сотрудников. Файловый режим, при котором база лежит в общей сетевой папке, перестаёт справляться с нагрузкой: растут блокировки, замедляются отчёты, повышается риск повреждения данных. Клиент-серверный вариант снимает эти ограничения, но требует отдельного лицензирования, настройки и администрирования.
Понимание того, что такое сервер 1С и как он устроен, помогает осознанно выбрать архитектуру, спланировать бюджет на лицензии и оборудование, а также правильно диагностировать проблемы производительности, когда система начинает «тормозить».
Что такое сервер 1С простыми словами
Когда пользователь открывает документ в 1С, его компьютер не читает данные из базы напрямую. Клиентское приложение (толстый, тонкий или веб-клиент) отправляет запрос на сервер 1С, тот выполняет серверный код конфигурации, обращается к СУБД за данными и возвращает результат пользователю. Получается трёхзвенная схема: клиент — сервер приложений — сервер баз данных.
Физически сервер 1С — это набор служб и процессов, установленных на выделенной машине или виртуальном сервере. Главный процесс — агент сервера, который координирует работу остальных компонентов. Совокупность таких процессов, обслуживающих информационные базы, называется кластером серверов 1С.
Из чего состоит кластер серверов 1С
Кластер включает несколько типов процессов, каждый из которых выполняет свою роль. Понимание их назначения важно при диагностике: по загрузке конкретного процесса можно определить, где именно возникла проблема.
- Агент сервера (ragent) — главная служба, через которую проходят подключения клиентов. Ведёт реестр кластера, знает обо всех базах и рабочих процессах.
- Рабочие процессы (rphost) — именно они выполняют серверный код конфигурации и обращаются к СУБД. Один кластер может держать несколько рабочих процессов, распределяя между ними пользователей.
- Менеджер кластера (rmngr) — управляет распределением нагрузки, хранит служебные данные сеансов.
Количество рабочих процессов влияет на устойчивость системы. Если в кластере один rphost и он аварийно завершится, сеансы пользователей оборвутся. При нескольких процессах нагрузка перераспределяется, и сбой одного из них менее заметен. Поэтому на продуктивных системах рекомендуют держать минимум два–три рабочих процесса.
Чем клиент-серверный режим отличается от файлового
В файловом режиме база хранится в одном файле (1Cv8.1CD) на локальном диске или сетевом ресурсе, и каждый клиент работает с ним напрямую. Это просто и дёшево, но механизм блокировок работает на уровне таблиц целиком, а весь трафик чтения идёт по сети на компьютеры пользователей.
В клиент-серверном режиме блокировки управляются СУБД на уровне записей, сеть между клиентом и базой заменяется связкой «клиент — сервер 1С — СУБД», а тяжёлые операции выполняются на сервере. Это принципиально меняет масштабируемость системы.
| Критерий | Файловый режим | Клиент-серверный режим |
|---|---|---|
| Количество пользователей | Ориентировочно до 10–15 активных | Десятки и сотни одновременных сеансов |
| Блокировки | На уровне таблиц | На уровне записей (управляемые) |
| Дополнительные лицензии | Не требуются | Лицензия на сервер 1С + лицензия на СУБД |
| Администрирование | Минимальное | Требуется обслуживание кластера и СУБД |
| Устойчивость к сбоям | Риск повреждения файла при обрыве | Транзакционная целостность на стороне СУБД |
Переход на клиент-серверный режим оправдан, когда база заметно выросла, пользователи жалуются на взаимные блокировки, а регламентные операции (закрытие месяца, большие отчёты) выполняются часами. Если в компании работает пять бухгалтеров с базой в несколько гигабайт и жалоб нет — файловый режим остаётся разумным выбором.
Сравнение вариантов
Подходит небольшим командам до 10–15 пользователей. Ограничение: табличные блокировки и снижение скорости при росте базы.
Сервер 1С и СУБД на одной машине. Подходит средним компаниям; ограничение — конкуренция компонентов за ресурсы при высокой нагрузке.
Отдельные серверы для 1С и СУБД. Подходит крупным внедрениям с сотнями пользователей; требует больше оборудования и квалификации администраторов.
Какие лицензии нужны для работы сервера 1С
Работа в клиент-серверном режиме требует отдельного лицензирования, и это часто становится сюрпризом при планировании бюджета. Помимо клиентских лицензий на рабочие места, необходима лицензия на сервер «1С:Предприятие» — она приобретается отдельно и привязывается к аппаратной конфигурации сервера.
Существуют варианты серверных лицензий, различающиеся по разрядности (32-битная и 64-битная версия сервера) и масштабу. Дополнительно учитывайте лицензирование самой СУБД: коммерческие системы вроде MS SQL Server лицензируются по ядрам или по клиентским доступам, а PostgreSQL распространяется свободно, что заметно снижает стоимость внедрения.
Точные условия и стоимость лицензий зависят от текущей лицензионной политики фирмы «1С» и поставщика СУБД, поэтому перед покупкой сверяйтесь с актуальными прайсами и условиями у официальных партнёров.
Как развернуть сервер 1С: общий порядок действий
Установка сервера 1С выполняется с того же дистрибутива платформы, что и клиентская часть: при установке выбираются компоненты «Сервер 1С:Предприятие» и «Администрирование сервера». Ниже — укрупнённый порядок развёртывания, который подходит как для Windows, так и для Linux (с поправкой на пакетный менеджер).
- 1Установите и настройте СУБД (например, PostgreSQL или MS SQL Server), создайте служебного пользователя с правами на создание баз.
- 2Установите компоненты сервера 1С из дистрибутива платформы той же версии, что и у клиентов.
- 3Убедитесь, что служба агента сервера запущена и кластер создан (по умолчанию создаётся автоматически).
- 4Откройте консоль администрирования серверов 1С, добавьте сервер и проверьте, что кластер виден.
- 5Создайте информационную базу через консоль кластера или через конфигуратор, указав параметры подключения к СУБД.
- 6Загрузите данные из файловой базы (выгрузка/загрузка .dt) или создайте пустую базу из шаблона.
- 7Проверьте подключение клиентом, выполните типовые операции и замерьте время отклика.
Важный нюанс: версия платформы на сервере, на клиентах и у консоли администрирования должна совпадать. Разно версии — частая причина ошибок подключения и невозможности открыть консоль кластера.
# Проверка состояния службы агента сервера 1С в Linux
systemctl status srv1cv8
# Проверка, что агент слушает стандартный порт
ss -tlnp | grep 1540Как проверить, что сервер работает правильно
После развёртывания и в ходе эксплуатации полезно контролировать несколько признаков, которые отличают здоровую систему от проблемной. Проверка занимает немного времени, но позволяет заметить деградацию до жалоб пользователей.
Как проверить результат
Служба запущена, порт 1540 прослушивается
Служба остановлена или падает с ошибками в журнале
Несколько процессов, память распределена равномерно
Один процесс занимает почти всю память сервера
База открывается, документы проводятся без ошибок блокировок
Ошибки соединения с кластером или массовые конфликты блокировок
Нет повторяющихся ошибок и взаимоблокировок
Регулярные deadlock-сообщения и таймауты запросов
Если пользователи жалуются на медленную работу, сначала определите, где узкое место: клиент, сервер 1С или СУБД. Загрузка процессов rphost показывает нагрузку на сервер приложений, а мониторинг запросов в СУБД — проблемы с запросами и индексами. Менять оборудование до такой диагностики — значит действовать вслепую.
Типичные ошибки при работе с сервером 1С
Отдельно стоит упомянуть резервное копирование. В клиент-серверном режиме копию делают средствами СУБД, а не копированием файлов. Резервная копия должна регулярно проверяться восстановлением на тестовом стенде — копия, которая ни разу не восстанавливалась, не считается надёжной.
При переходе с файлового режима на клиент-серверный часто обнаруживается, что «тормозила» не архитектура, а конкретные запросы и отчёты. Перед миграцией замерьте время ключевых операций, а после — сравните. Так вы получите объективную картину эффекта и сможете показать результат руководству в цифрах.
Когда сервер 1С не нужен: альтернативы
Клиент-серверная архитектура — не единственный способ организовать многопользовательскую работу. Для небольших компаний существуют варианты, которые дешевле и проще в обслуживании.
Первый вариант — файловый режим с публикацией на веб-сервере. Пользователи подключаются через браузер или тонкий клиент по протоколу HTTP, что удобно для удалённых сотрудников, хотя ограничения файлового режима по блокировкам сохраняются. Второй вариант — облачные сервисы на базе 1С, где инфраструктуру обслуживает провайдер, а компания платит подписку. Третий — работа через терминальный сервер (RDP), когда база и клиенты находятся в одной локальной сети с сервером терминалов.
Как выбрать действие
Часто задаваемые вопросы
Можно ли установить сервер 1С и СУБД на один компьютер?
Да, это распространённый вариант для небольших и средних внедрений. Главное — обеспечить достаточный объём оперативной памяти, чтобы оба компонента не конкурировали за ресурсы, и ограничить потребление памяти СУБД в настройках. При росте нагрузки компоненты разносят на разные серверы.
Нужна ли отдельная лицензия на сервер 1С, если база одна?
Да. Лицензия на сервер «1С:Предприятие» требуется независимо от количества баз и приобретается отдельно от клиентских лицензий. Исключение — файловый режим, где серверный компонент вообще не используется.
Что будет, если служба агента сервера остановится?
Новые подключения станут невозможны, а активные сеансы пользователей завершатся с ошибкой соединения. Незавершённые транзакции откатятся на стороне СУБД, поэтому данные в базе останутся целостными, но несохранённую работу пользователи потеряют. После перезапуска службы работа возобновляется.
Какая СУБД лучше для сервера 1С?
Однозначного ответа нет: платформа поддерживает MS SQL Server, PostgreSQL (включая сборки, адаптированные под 1С), Oracle и IBM Db2. PostgreSQL снижает стоимость лицензий, MS SQL Server часто выбирают за зрелые инструменты администрирования. Выбор зависит от бюджета, опыта администраторов и требований к нагрузке.
Можно ли перенести файловую базу в клиент-серверный режим без потери данных?
Да, штатный способ — выгрузка базы в файл .dt через конфигуратор и загрузка его в новую базу на сервере. Перед переносом сделайте резервную копию, а после загрузки проверьте работу ключевых документов и отчётов, потому что поведение управляемых блокировок отличается от файлового режима.
Почему после перехода на серверный режим 1С всё равно тормозит?
Клиент-серверная архитектура не ускоряет сама по себе — она снимает ограничения масштабирования. Если запросы конфигурации неоптимальны, в СУБД не обновляется статистика или серверу не хватает памяти, проблемы сохранятся. Начните с анализа длительных запросов и настроек СУБД, а не с покупки нового оборудования.
Что важно запомнить
Сервер 1С — это промежуточный слой между клиентами и СУБД, который обеспечивает многопользовательскую работу с большими базами. Он требует отдельной лицензии, грамотной настройки кластера и обслуживания СУБД. Переходить на клиент-серверный режим стоит при росте числа пользователей и блокировок, но только после тестирования на копии базы и с проверенной системой резервного копирования.