Требования назначения функциональности (ТНФ) в 1С:Предприятие 8.3
- Тяжелые регламентные и фоновые задания парализуют работу интерактивных пользователей (блокировки UI).
- Смешивание рабочих нагрузок критичных боевых баз (ERP) и тестовых контуров на одном пуле процессов.
- Необходимость принудительного закрепления веб-клиентов или тонких клиентов за определенным сервером.
1. Назначение типов сервисов в ТНФ
В кластере 1С настраиваются правила для следующих ключевых объектов:
- Сервис фоновых заданий: выполнение фоновых и регламентных задач;
- Сервис сеансов: хранение информации о пользовательских сессиях;
- Сервис блокировок: управление управляемыми транзакционными блокировками;
- Клиентские соединения: рабочие процессы
rphost.
2. Изоляция фоновых заданий на выделенный сервер (через rac)
Шаг 1: Запретить сервис фоновых заданий на основном интерактивном сервере App-Node-1:
rac tnf insert --cluster=<cluster_id> --server=<server1_id> \
--type=BackgroundJobService \
--rule-type=DonotUseШаг 2: Разрешить и назначить приоритет фоновых заданий на сервере App-Node-2:
rac tnf insert --cluster=<cluster_id> --server=<server2_id> \
--type=BackgroundJobService \
--rule-type=Assign3. Изоляция конкретной информационной базы (например, ERP_PROD)
# Назначить выполнение процессов базы ERP_PROD только на сервере App-Node-1
rac tnf insert --cluster=<cluster_id> --server=<server1_id> \
--type=ClientConnection \
--infobase="ERP_PROD" \
--rule-type=Assign4. Применение сформированных требований
Требования не вступают в силу до запуска команды полного применения:
rac cluster apply-tnf --cluster=<cluster_id> Частые вопросы (FAQ)
В чем разница между типами правил 'Назначать' (Assign) и 'Авто' (Auto)?
'Назначать' жестко фиксирует исполнение сервиса на данном сервере при наличии условий. 'Авто' позволяет кластеру динамически распределять нагрузку на основе балансировки.
Что произойдет, если сервер с правилом 'Назначать' выйдет из строя?
Если на других серверах для этого сервиса стоит правило 'Не использовать', сервис станет недоступен. Рекомендуется использовать правило 'Использовать' с разным приоритетом для резервирования.
Нужно ли перезапускать кластер после изменения ТНФ?
Нет. Достаточно выполнить команду 'Применить требования назначения функциональности' в консоли или через rac cluster apply-tnf.
Как изолировать работу тонких клиентов от веб-сервисов (HTTP-сервисов)?
В правилах назначения для объекта 'Клиентское соединение' задайте фильтр по типу клиентского приложения (WebClient, ThinClient, 1CConsole).