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

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

Что такое сервер приложений 1С и зачем он нужен

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

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

В отличие от файлового режима, где каждый клиент напрямую читает и изменяет файл базы, сервер приложений централизует всю логику: он исполняет серверные процедуры, управляет транзакциями, контролирует конкурентный доступ и разграничивает права. Благодаря этому система выдерживает одновременную работу десятков и сотен пользователей без блокировок и повреждения данных.

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

Из чего состоит клиент-серверная архитектура 1С

Клиент-серверный вариант работы 1С строится на трёх уровнях. Первый уровень — клиентские приложения: тонкий клиент, толстый клиент или веб-клиент через браузер. Они отвечают только за интерфейс и передачу запросов на сервер.

Второй уровень — кластер серверов 1С:Предприятия. В его состав входят агент сервера (центральный процесс, управляющий кластером), рабочие процессы (rphost), которые непосредственно исполняют код, и менеджер кластера, хранящий реестр информационных баз и сеансов. Именно рабочие процессы потребляют основную часть оперативной памяти и процессорного времени.

Третий уровень — сервер СУБД: Microsoft SQL Server, PostgreSQL, Oracle Database или IBM Db2. Сервер 1С не хранит данные сам: он формирует SQL-запросы, передаёт их СУБД и получает результаты. Поэтому производительность системы зависит от слаженности всех трёх уровней, а не только от мощности одного сервера.

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

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

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

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

Какие задачи решает сервер приложений

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

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

Наконец, сервер обеспечивает масштабирование: при росте нагрузки в кластер добавляют рабочие серверы, а требования к безопасности и производительности настраиваются на уровне кластера без изменения конфигурации.

БлокировкиПользователи мешают друг другу

Частые ошибки «конфликт блокировок» при проведении документов

Размер базыФайл базы вырос

Файл 1Cv8.1CD занимает несколько гигабайт и продолжает расти

СкоростьОтчёты формируются долго

Тяжёлые отчёты и закрытие месяца занимают часы

НадёжностьБыли повреждения базы

Приходилось восстанавливать файл после сбоев сети или питания

Как развернуть сервер приложений 1С: общий порядок

Развёртывание начинается с подготовки инфраструктуры: выделяется сервер с достаточным объёмом оперативной памяти (рабочие процессы 1С активно её потребляют), устанавливается и настраивается СУБД. Затем ставится компонент «Сервер 1С:Предприятия» из дистрибутива платформы — он регистрируется как служба операционной системы.

После установки создаётся информационная база через консоль кластера или конфигуратор: указывается имя сервера СУБД, имя базы данных и учётная запись с правами на создание базы. Пользователи подключаются к базе, указывая в списке баз вариант «На сервере 1С:Предприятия» и имя кластера.

Порядок развёртывания
  1. 1
    Установите и настройте СУБД, создайте учётную запись для 1С
  2. 2
    Установите компонент «Сервер 1С:Предприятия» и убедитесь, что служба агента запущена
  3. 3
    Откройте консоль администрирования кластера и проверьте наличие рабочих процессов
  4. 4
    Создайте информационную базу через конфигуратор или консоль кластера
  5. 5
    Добавьте базу в список на клиентском компьютере в режиме «На сервере» и проверьте вход
  6. 6
    Настройте резервное копирование средствами СУБД

Требования к лицензиям и оборудованию

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

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

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

Как проверить работоспособность и что делать при проблемах

Базовая проверка начинается со службы агента сервера: она должна быть запущена, а в консоли кластера должны отображаться рабочие процессы и зарегистрированные базы. Далее проверяется подключение клиента: вход в базу под тестовым пользователем, открытие журнала документов, запуск простого отчёта.

Если клиенты не подключаются, типовые причины — недоступность портов кластера на сетевом экране, незапущенная служба агента, неверное имя сервера в списке баз или отсутствие у учётной записи СУБД нужных прав. Медленная работа обычно указывает на нехватку памяти рабочим процессам, проблемы дисковой подсистемы СУБД или неоптимальный код конфигурации, а не на «слабый сервер» вообще.

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

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

Служба агента сервера
Норма

Служба запущена, в консоли виден кластер и рабочие процессы

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

Служба остановлена или консоль не видит кластер

Подключение клиента
Норма

База открывается, сеанс виден в консоли кластера

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

Ошибка соединения или база не найдена в кластере

Память рабочих процессов
Норма

Есть запас свободной памяти на сервере

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

Процессы rphost упираются в предел, начинается подкачка

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

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

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

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

Типичные ошибки при внедрении сервера 1С

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

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

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

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

Можно ли работать в 1С без сервера приложений?

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

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

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

Какую СУБД выбрать для сервера 1С?

Платформа поддерживает Microsoft SQL Server, PostgreSQL (включая специальные сборки), Oracle Database и IBM Db2. На практике чаще всего выбирают между MS SQL и PostgreSQL: первый удобен в инфраструктуре Windows, второй снижает стоимость лицензий. Выбор зависит от бюджета, компетенций администраторов и требований к нагрузке.

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

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

Что делать, если сервер 1С «съел» всю память?

Сначала определите, какие рабочие процессы и сеансы потребляют память — это видно в консоли кластера. Завершите зависшие сеансы, проверьте регламентные задания и тяжёлые отчёты. Если нагрузка штатная, увеличьте объём памяти или добавьте в кластер ещё один рабочий сервер для распределения сеансов.

Как понять, что проблема в сервере 1С, а не в сети или клиенте?

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