Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

1C_RPHOST_MEMORY_LEAK 1С:Предприятие и СУБД

Балансировка нагрузки и тюнинг рабочих процессов rphost в 1С:Предприятие 8.3

Обновлено: 26.08.2026 · Официальная документация ↗
  • Рабочие процессы rphost непрерывно разрастаются в оперативной памяти (утечки памяти в коде конфигурации).
  • Зависание сеансов пользователей при падении нестабильного рабочего процесса.
  • Неравномерное распределение соединений между процессами на многоядерных серверах.

1. Расчет количества рабочих процессов rphost

Рекомендуемая формула расчета для серверов 1С:

  • 1 рабочий процесс rphost на каждые 4-8 физических ядер CPU;
  • 1 рабочий процесс rphost на каждые 30–50 активных пользователей.

2. Настройка параметров автоперезапуска rphost в свойствах кластера

В консоли Администрирования кластера установите защитные лимиты:

# Допустимый объем памяти рабочих процессов (в байтах, например 80% RAM)
--max-memory-size = 34359738368

# Интервал превышения допустимого объема памяти (секунды)
--max-memory-time-limit = 60

# Временно допустимый объем памяти (превышение порога)
--temp-allowed-memory-size = 42949672960

# Интервал перезапуска рабочих процессов (секунды, 86400 = раз в сутки ночью)
--expiration-timeout = 86400

3. Конфигурация предельных объемов памяти сеансов

Защита от некорректных тяжелых отчетов пользователей:

# Максимальный объем памяти одного сеанса (например, 4 ГБ)
rac cluster update --cluster=<cluster_id> \
  --session-max-memory-size=4294967296

4. Включение распределения нагрузки по производительности

В свойствах рабочего сервера установите параметр:

  • Количество ИБ на один процесс: 1 (для изоляции крупных баз);
  • Количество соединений на один процесс: 25-40.
💡 Практика специалистов: Всегда настраивайте session-max-memory-size. Это единственный надежный способ защитить кластер от падения, когда пользователь случайно формирует некорректный отчет за 10 лет без фильтров.

Частые вопросы (FAQ)

Что происходит с пользователями, когда rphost перезапускается по лимиту памяти?

Кластер запускает новый резервный процесс rphost, плавно переводит новые вызовы на него, после чего завершает старый процесс без прерывания сеансов пользователей (мягкий перезапуск).

Почему не стоит создавать слишком много процессов rphost (например, 1 процесс на 1 ядро)?

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

Что делает параметр 'Количество ИБ на один процесс' = 1?

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

Как принудительно завершить зависший процесс rphost в Linux?

Определите PID зависшего процесса через rac session list или htop и выполните: kill -15 <PID>. Кластер переподключит сессии к другим воркерам.

Полезные материалы
Рекомендуем