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

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

Как удалить рабочий процесс 1С в кластере серверов

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

Рабочий процесс 1С (rphost) — это процесс сервера 1С:Предприятия, который непосредственно обслуживает сеансы пользователей и выполняет запросы к базе данных. Иногда администратору требуется удалить такой процесс из кластера: например, он «завис», съедает слишком много памяти, перестал принимать новые соединения или остался в кластере после изменения настроек. Удаление выполняется через консоль администрирования серверов 1С и не требует остановки всего сервера.

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

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

Что такое рабочий процесс 1С и когда его нужно удалять

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

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

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

Подготовка: как не оборвать работу пользователей

Главный риск при удалении рабочего процесса — разрыв активных сеансов, которые он обслуживает. Пользователи получат ошибку соединения с сервером, а несохранённые данные в открытых формах будут потеряны. Поэтому перед удалением проверьте, есть ли на процессе активные сеансы.

Откройте консоль администрирования серверов 1С, разверните нужный кластер и посмотрите ветку «Сеансы». Отсортируйте список по колонке «Рабочий процесс» и оцените, сколько сеансов закреплено за удаляемым процессом. Если сеансы есть, корректный путь — попросить пользователей завершить работу или принудительно удалить сеансы через контекстное меню, предупредив людей заранее.

Если в свойствах рабочего сервера разрешено создание новых процессов, кластер после удаления автоматически запустит замену, и новые сеансы пойдут на свежий процесс. Это позволяет провести «мягкую» ротацию: сначала запретить новые соединения на старый процесс (если используется механизм блокировки), дождаться завершения сеансов и только потом удалить его.

Удаление рабочего процесса через консоль кластера

Штатный способ удаления — консоль администрирования серверов 1С (файл 1CV8 Server Administration, входит в состав платформы). Консоль можно запустить на самом сервере или на рабочем месте администратора, подключившись к серверу по сети.

Порядок удаления рабочего процесса
  1. 1
    Откройте консоль «Администрирование серверов 1С:Предприятия» и разверните нужный сервер и кластер.
  2. 2
    Перейдите в ветку «Рабочие процессы» — отобразится список процессов rphost с указанием PID, порта, занятой памяти и числа сеансов.
  3. 3
    Проверьте в ветке «Сеансы», какие пользователи обслуживаются выбранным процессом, и завершите или перенесите их работу.
  4. 4
    Щёлкните по процессу правой кнопкой мыши и выберите пункт «Удалить», подтвердите действие.
  5. 5
    Убедитесь, что процесс исчез из списка, а при необходимости — что кластер создал новый рабочий процесс взамен.

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

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

Принудительное завершение зависшего rphost

Когда рабочий процесс не отвечает и не удаляется из консоли, его завершают средствами операционной системы. Сначала узнайте PID процесса — он виден в ветке «Рабочие процессы» консоли кластера, что позволяет точно отличить нужный rphost от остальных.

bash
# Windows (командная строка администратора)
taskkill /PID <номер_процесса> /F

# Linux
kill -9 <номер_процесса>

В Windows альтернативой командной строке служит диспетчер задач: вкладка «Подробности», поиск rphost.exe по идентификатору, пункт «Снять задачу». В Linux список процессов с PID удобно смотреть командой ps aux | grep rphost.

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

Чем удаление отличается от перезапуска службы и перезагрузки сервера

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

Сравнение способов воздействия

Удаление рабочего процесса

Точечное действие: прерываются только сеансы конкретного rphost. Подходит для зависшего или «раздувшегося» по памяти процесса.

Перезапуск службы агента сервера

Останавливает весь кластер и все сеансы. Применяется при обновлении платформы или сбоях всего кластера, требует полного окна обслуживания.

Принудительный kill процесса

Аварийный вариант для зависшего процесса, который не удаляется штатно. Риск «осиротевших» записей в кластере, требует последующей проверки.

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

Настройка автоматического перезапуска вместо ручного удаления

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

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

Дополнительно можно ограничить количество сеансов и соединений на один процесс — тогда нагрузка распределится равномернее, и отдельные процессы не будут «перегреваться».

Если процесс rphost стабильно набирает память и его приходится перезапускать чаще раза в сутки, это симптом, а не сама проблема. Проверьте технологический журнал на предмет утечек в запросах или фоновых заданиях и настройте автоматический перезапуск по порогу памяти как временную меру.
ПЗ
Практическое замечание

Проверка результата и типичные ошибки

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

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

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

Список рабочих процессов в консоли
Норма

Удалённый процесс исчез, остальные в рабочем состоянии

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

Запись о процессе осталась или появились дубли с тем же портом

Новые подключения пользователей
Норма

Сеансы создаются, клиенты входят в базу

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

Ошибка соединения с сервером у всех пользователей

Процессы rphost на уровне ОС
Норма

Количество процессов соответствует списку в консоли

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

В системе «висят» rphost, которых нет в консоли

Типичные ошибки
01
Удаление процесса без проверки сеансов — у пользователей обрывается работа и теряются несохранённые данные.
02
Завершение «не того» rphost по памяти: всегда сверяйте PID в консоли кластера, а не выбирайте процесс наугад в диспетчере задач.
03
Перезапуск всей службы агента вместо точечного удаления — останавливаются все базы и все пользователи без необходимости.
04
Игнорирование причины зависания: процесс удаляют, но не разбираются, почему он завис, и ситуация повторяется.

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

Итог

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

Рабочий процесс удаляется через консоль кластера: ветка «Рабочие процессы» → «Удалить». Перед удалением проверьте и завершите сеансы пользователей. Зависший процесс завершайте по PID средствами ОС. Для регулярных случаев настройте автоматический перезапуск по порогу памяти вместо ручных действий.

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

Можно ли удалить рабочий процесс, не разрывая сеансы пользователей?

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

Что произойдёт с фоновыми заданиями при удалении процесса?

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

Почему после удаления процесс появился снова?

Это штатное поведение: если в свойствах рабочего сервера разрешено автоматическое создание процессов, кластер запускает новый rphost при поступлении подключений. Удаление в этом случае фактически означает перезапуск процесса с очисткой памяти.

Как удалить рабочий процесс, если консоль кластера не открывается?

Проверьте, запущена ли служба агента сервера 1С на целевой машине и доступен ли порт агента по сети. Если консоль недоступна, процесс можно завершить напрямую в операционной системе по PID, а запись о нём удалить позже, когда консоль заработает.

Отличается ли процедура для Linux-сервера 1С?

Логика та же: удаление выполняется через консоль кластера, а принудительное завершение — командой kill по PID процесса rphost. Отличаются только инструменты просмотра процессов (ps, top, htop вместо диспетчера задач).

Нужно ли удалять процессы после обновления платформы?

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