Как устроен сервер 1С и когда без него не обойтись

· 9 мин

Содержание

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

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

Файловая база и сервер 1С: в чём разница на практике

У платформы 1С:Предприятие 8.3 два варианта работы с информационной базой.

Файловый вариант. Вся база лежит в одном файле 1Cv8.1CD в общей папке. Каждый клиент сам открывает этот файл по сети, сам читает данные и сам их пишет. Сервера как программы нет — есть только сетевая папка.

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

КритерийФайловая базаСервер 1С + СУБД
Сколько пользователей комфортно1–10, иногда до 15десятки и сотни
Размер базыдо нескольких десятков ГБ, дальше тормозитсотни ГБ
Блокировкина уровне таблиц, часто конфликтыуправляемые, на уровне записей
Нагрузка на сетьвысокая: по сети ходят данныенизкая: ходят команды и результаты
Резервное копированиекопия файла или выгрузка .dtсредствами СУБД, без остановки работы
Отказ клиента при записириск повредить файл базытранзакция откатится в СУБД
Стоимостьбесплатно сверх клиентских лицензийлицензия на сервер, сервер, СУБД, администратор

Граница «10–15 пользователей» не жёсткая. Небольшая фирма с тремя бухгалтерами и базой на 30 ГБ тоже упрётся в файловый режим. А десять человек, которые только смотрят справочники, могут годами жить на файловой базе.

Конфигурация при переходе не меняется. Ту же Бухгалтерию или ЗУП переносят на сервер выгрузкой в .dt и загрузкой в новую серверную базу.

Нужен ли вам сервер 1С?

Из чего состоит сервер 1С: агент, кластер, рабочие процессы

Сервер 1С — это не одна программа, а связка процессов. Они ставятся вместе с платформой, если при установке выбрать компонент «Сервер 1С:Предприятия».

Основные процессы

  • 🧭 Агент сервера (ragent) — точка входа. Слушает порт 1540, хранит список кластеров и администраторов. В Windows работает как служба «Агент сервера 1С:Предприятия 8.3».
  • 🗂️ Менеджер кластера (rmngr) — порт 1541. Знает, какие базы зарегистрированы, распределяет сеансы и управляет рабочими процессами.
  • ⚙️ Рабочие процессы (rphost) — выполняют код конфигурации и ходят в СУБД. Порты берут из диапазона, по умолчанию 1560–1591.
  • 🛠️ Сервер администрирования (ras) — порт 1545, нужен для управления через утилиту командной строки rac.

Как проходит подключение

  1. Клиент обращается к агенту на порт 1540.
  2. Агент направляет его к менеджеру кластера на 1541.
  3. Менеджер назначает рабочий процесс, и клиент дальше общается с ним напрямую по порту из диапазона.
  4. Рабочий процесс выполняет запросы к СУБД и возвращает клиенту готовый результат.

Отсюда первое правило настройки: в брандмауэре сервера должны быть открыты все три группы портов. Открыть только 1540 и удивляться ошибкам подключения — классика.

Кластер и рабочие серверы

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

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

Служебные данные кластера (реестр баз, сеансы, кэш) лежат в каталоге srvinfo. Обычно это C:\Program Files\1cv8\srvinfo, если при установке не указали другой путь.

Требования к серверу 1С: железо, ОС и СУБД

Фирма 1С не даёт жёстких минимумов «на N пользователей». Ниже ориентиры из практики для типовых конфигураций вроде Бухгалтерии и ЗУП. Всё примерно: тяжёлая УТ или ERP съедят больше.

ПользователейПроцессорПамятьДиски
до 154 ядра16 ГБSSD, 2 диска в зеркале
15–406–8 ядер32 ГБNVMe SSD
40–10012–16 ядер64 ГБ и большеNVMe SSD, отдельный диск под журналы СУБД

Здесь сервер 1С и СУБД стоят на одной машине. Это самый простой и при небольших нагрузках самый быстрый вариант: между ними нет сетевых задержек.

Что важнее всего для скорости

  • 🚀 Частота ядра. Одна операция пользователя (проведение документа, отчёт) идёт в основном в одном потоке. Процессор с высокой частотой на ядро даст больше, чем много медленных ядер.
  • 💾 Скорость дисков. СУБД постоянно пишет журнал транзакций. Обычные HDD для рабочей базы сейчас не годятся.
  • 🧠 Память. Если СУБД не хватает памяти под кэш, она начинает читать с диска, и всё замедляется.
  • 🌐 Сеть между сервером 1С и СУБД. Если они на разных машинах, нужен минимум 1 Гбит/с и минимальная задержка.

Операционная система и СУБД

Сервер 1С работает на Windows Server и на Linux (Debian, Ubuntu, RHEL-подобные и российские дистрибутивы). Ставьте только 64-разрядную версию сервера.

Поддерживаемые СУБД:

  • Microsoft SQL Server — привычный вариант для Windows. Для небольших баз хватает бесплатной редакции Express, но у неё есть ограничения на размер базы и память.
  • PostgreSQL — бесплатная СУБД. Используйте сборку с патчами для 1С (от фирмы 1С или Postgres Pro), а не «чистую» версию из репозитория.
  • IBM Db2 и Oracle Database — встречаются в крупных компаниях.

Лицензии

Для клиент-серверного варианта нужны два вида лицензий:

  1. Клиентские — на каждое одновременное подключение пользователя. Они нужны и в файловом режиме.
  2. Лицензия на сервер — отдельная. Без неё сервер базу не запустит.

Серверные лицензии выпускаются в нескольких редакциях. Для небольших компаний есть облегчённая редакция с ограничением на число подключений. Стандартная редакция («ПРОФ») подходит большинству. КОРП нужна, когда требуются возможности масштабирования и отказоустойчивости кластера. Ориентировочно серверная лицензия стоит от десятков тысяч рублей до сотен тысяч для КОРП — точную цену уточняйте у партнёра 1С.

Свой сервер или аренда в облаке

Выбор упирается в деньги, компетенции и требования безопасности.

Своё железоАренда сервера (IaaS)Аренда 1С в облаке (SaaS)
Кто администрируетваш специалистваш специалистпровайдер
Лицензиипокупаете самипокупаете самивходят в аренду
Стартовые затратывысокие: сервер, лицензиинизкиеминимальные
Ежемесячные затратыэлектричество, обслуживаниеаренда машиныориентировочно 1–3 тыс. ₽ на пользователя
Доработки конфигурациибез ограниченийбез ограниченийзависит от провайдера, часто ограничены
Данныеу вас в офисев дата-центреу провайдера

Когда выгоден свой сервер

  • 💼 больше 20–30 пользователей и стабильный штат;
  • 🔧 есть администратор, который умеет настраивать 1С и СУБД;
  • 🔒 данные по требованиям безопасности должны оставаться в офисе.

Когда лучше облако

  • 🧾 до 10–15 пользователей и типовые конфигурации без доработок;
  • 🧑‍💻 нет своего администратора;
  • 🌍 сотрудники работают из разных городов.

Средний путь — арендовать виртуальную машину в дата-центре и поставить туда свой сервер 1С. Железо не ваша забота, а настройки и лицензии под вашим контролем.

Если арендуете машину, проверьте, что процессор не «разделяемый» с жёсткими лимитами. На дешёвых тарифах 1С может работать в разы медленнее, чем на домашнем ПК.

Ошибки при настройке сервера 1С и как их избежать

Диагностика: выберите симптом

Ещё несколько ошибок, которые не видны сразу, но аукаются через месяц:

  • 🔐 Служба работает от учётной записи без прав на каталог srvinfo. Сервер падает после перезагрузки или при росте журналов.
  • 🛡️ Антивирус проверяет файлы базы и srvinfo. Добавьте в исключения каталоги СУБД, srvinfo и процессы rphost, rmngr, ragent.
  • 🧮 Установлен 32-разрядный сервер. Ему недоступна большая часть памяти, рабочие процессы упираются в лимит.
  • 💤 Схема электропитания «Сбалансированная». Процессор снижает частоту, а для 1С важна именно она. Переключите на «Высокую производительность».

Не открывается консоль администрирования

Оснастка «Администрирование серверов 1С Предприятия» в Windows работает через библиотеку radmin.dll. После установки новой версии платформы консоль часто перестаёт открываться. Помогает перерегистрация библиотеки из командной строки от имени администратора:

regsvr32 "C:\Program Files\1cv8\8.3.xx.xxxx\bin\radmin.dll"

Вместо 8.3.xx.xxxx подставьте номер установленной версии. Разрядность библиотеки должна совпадать с разрядностью консоли.

Как ускорить и стабилизировать работу сервера 1С

Регламент СУБД

Самое недооценённое. Без обслуживания база замедляется месяц за месяцем.

  1. Ежедневно — обновление статистики.
  2. Раз в неделю — перестроение или реорганизация индексов.
  3. Для MS SQL — модель восстановления. Если нет резервного копирования журнала транзакций, ставьте Simple, иначе журнал разрастётся до размера диска.
  4. Для PostgreSQL — проверить, что работает автоочистка (autovacuum), и задать shared_buffers примерно в четверть памяти.

Лимиты памяти рабочих процессов

В свойствах рабочего сервера задают пороги памяти процессов. Когда процесс их превышает, кластер перезапускает его. Без лимитов один «утёкший» процесс съест всю память, и встанут все пользователи.

Очистка кэша сервера

При странных ошибках после обновления конфигурации помогает очистка сеансовых данных кластера. Для этого останавливают службу агента и удаляют папки snccntx* в каталоге кластера внутри srvinfo (например, srvinfo\reg_1541).

Остановка службы обрывает все сеансы, несохранённые данные пользователей пропадут. Делайте это вечером или в выходные, предупредив сотрудников. Удаляйте только папки snccntx*, остальные файлы каталога не трогайте.

Диагностика

  • 📋 Технологический журнал — включается файлом logcfg.xml в каталоге conf платформы. Показывает долгие запросы, взаимоблокировки и исключения.
  • 👥 Сеансы и лицензии — через консоль администрирования или командой rac session list --licenses. Для остальных команд смотрите справку rac help.
  • 📊 Монитор ресурсов ОС — загрузка ядер, очередь диска. Если одно ядро на 100%, а остальные отдыхают, нужен процессор с большей частотой, а не больше ядер.

Частые вопросы

Можно ли поставить сервер 1С на обычный компьютер?
Можно, технически сервер ставится и на настольную Windows. Для рабочей эксплуатации лучше серверная ОС, SSD в зеркале и бесперебойное питание.
Нужен ли сервер 1С для веб-клиента?
Нет. Веб-клиент работает через веб-сервер (IIS или Apache), который публикует как серверную, так и файловую базу. Но при большом числе пользователей файловая база всё равно станет узким местом.
Можно ли держать на одном сервере несколько баз?
Да. В кластере регистрируют сколько угодно баз — Бухгалтерию, ЗУП, УТ. Лицензия на сервер покупается одна на машину, а не на каждую базу.
Сколько нужно клиентских лицензий при работе через сервер?
Столько же, сколько одновременно работающих пользователей. Переход на сервер количество клиентских лицензий не меняет.
Вернётся ли база в файловый режим, если сервер больше не нужен?
Да. Выгрузите базу в .dt из Конфигуратора и загрузите её в новую файловую базу. Данные и конфигурация сохранятся.