Rphost что за процесс
rphost или рабочий процесс 1С 8.3
rphost.exe — это рабочий процесс 1С 8.3, который обслуживает клиентские обращения и взаимодействует с сервером базы данных. rphost — важнейшее звено архитектуры 1С предприятия, которое берёт на себя достаточно большую аппаратную нагрузку. Таких процессов может быть большое количество, и они могут быть разнесены по разным машинам.
Очень часто администраторы жалуются на то, что rphost.exe «жрёт память» и сильно грузит процессор. Посмотреть, сколько в данный момент расходуется памяти, можно в обычном диспетчере задач:
Инструмент для администрирования рабочих процессов — утилита, входящая в поставку сервера 1С, называется Администрирование серверов 1С Предприятия (или консоль кластера):
С помощью данной утилиты можно также управлять и отслеживать другие вещи:
Настройки рабочего процесса
Рассмотрим нюансы настройки в 1С:
На платформе 1С 8.3 количеством рабочих процессов управляет кластер серверов самостоятельно.
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
rphost занимает память и грузит процессор
У многих возникают проблемы с rphost.exe, разного вида:
причем 1С даже на запущена, а в диспетчере следующее:
ежеминутно расчет на 2-3 мегабайта.
Как быть и что делать?
Решение проблем с rphost
Он работает- выполняя фоновые задания:
Есть несколько вариантов решения:
1. Обновить платформу 1С и поддерживайте ее в актуальном состоянии
2. Перезапустить сервер или службу Агент 1С Предприятия, но это временное лечение.
3. Отключить выполнение фоновых заданий (но тогда часть операции заложенных в программу не будет выполнено)
Отключить можно в свойствах базы
Установите галку Блокировка регламентных заданий включена и нажмите ОК
Для типовых конфигураций советую отключить обновление Полнотекстового поиска:
4. В консоли администрирования в настройках кластера выставить предел ОП и периодичность перезапуска рабочих процессов
Установим следующие параметры для рабочих процессов:
Подробнее об этом я уже писал в статье Оптимальные параметры кластера 1С 8.3
После установки таких настроек кластера, сервер начал стабильно работать.
rphost занимает память и грузит процессор
У многих возникают проблемы с rphost.exe, разного вида:
причем 1С даже на запущена, а в диспетчере следующее:
ежеминутно расчет на 2-3 мегабайта.
Как быть и что делать?
Решение проблем с rphost
Он работает- выполняя фоновые задания:
Есть несколько вариантов решения:
1. Обновить платформу 1С и поддерживайте ее в актуальном состоянии
2. Перезапустить сервер или службу Агент 1С Предприятия, но это временное лечение.
3. Отключить выполнение фоновых заданий (но тогда часть операции заложенных в программу не будет выполнено)
Отключить можно в свойствах базы
Установите галку Блокировка регламентных заданий включена и нажмите ОК
Для типовых конфигураций советую отключить обновление Полнотекстового поиска:
4. В консоли администрирования в настройках кластера выставить предел ОП и периодичность перезапуска рабочих процессов
Установим следующие параметры для рабочих процессов:
Подробнее об этом я уже писал в статье Оптимальные параметры кластера 1С 8.3
После установки таких настроек кластера, сервер начал стабильно работать.
Процесс 1С rmngr.exe грузит процессор
Введение
Этот сервер привлек мое внимание сразу же, как только я стал с ним работать. Предыдущий администратор безрезультатно бился над производительностью, приобрел 2 внешних корзины для отдельного рейда под базы данных mssql и временные данные пользователя 1С, но существующую проблему по загрузке процессора это не решало, хотя немножко разгрузило диски, но реальная проблема была не в них.
На сервере размещались примерно 30-35 баз, в которых работали по 1-2 человека и пару баз были, где работали по 3-5 человек одновременно. Все это крутилось вместе с MSSQL сервером на отдельном железном сервере с одним стареньким ксеоном и 32 гб оперативы. В принципе, для этих задач железо было более чем.
Первое, на что я обратил внимание, это то, что процессор был загружен даже ночью, когда на сервере никто не работал. Полез в консоль администратора смотреть, что нагружает процессор. Оказалось, что это фоновые задачи. Для большинства баз они были не нужны и все лишнее отключил. Нагрузка процессора сразу упала до приемлемого уровня в 60-70%, а диски вообще полностью разгрузились. Я про сервер забыл на какое-то время.
Снова к нему вернулся, когда пользователи стали жаловаться на очень медленную работу баз 1С. Процессор к тому времени почти всегда был загружен на 100%. Лишних фоновых задач уже не было. Надо было разбираться более внимательно, в чем тут проблема.
Разбираемся что конкретно в rmngr.exe грузит процессор
Загрузку процессора в равной степени давал процесс rmngr.exe и rphost.exe. Rphost уже ранее был настроен и оптимизирован. Вот такие настройки дали стабильную работу без необходимости перезапускать сервер месяцами:
Нагрузку rphost давал за счет оставшихся фоновых задач и что с ним еще сделать, я не знал. А с rmngr хотелось разобраться и узнать, что конкретно пожирает процессорное время. В этом процессе собраны все процессы менеджера кластера:
Есть возможность разделить сервисы менеджера кластера по разным системным процессам rmngr.exe и по pid определить, какая именно служба нагружает процессор. Включить такое разделение можно в свойствах рабочего сервера:
После того, как вы поставите галку, агент сервера 1С сам перезапустится с новыми настройками. После этого в диспетчере задач у вас будет порядка 15-ти процессов rmngr.exe с разными pid. Смотрите, какой из процессов больше всего использует процессор и в консоли управления 1С в разделе Менеджеры кластера по pid смотрите описание процесса.
В моем случае это был сервис журнала регистраций. Чтобы это узнать, дважды щелкните мышкой по процессу с необходимым pid:
Пол дела сделали, нашли виновника тормозов. Я скрины делал, когда уже решил проблему, так что у меня нагрузки нет.
Сервис журнала регистраций 1С нагружает процессор
Я выяснил, что конкретно дает чрезмерную нагрузку на сервер. Посмотрел на объем журналов регистраций. У некоторых баз он достигал размера в 10-15 гигов. После чистки серверу стало заметно легче, нагрузка снова опустилась, но где-то до 80-90% и я на несколько месяцев забыл про сервер.
Он напомнил о себе тормозами и загрузкой процессора в 100%. Проделанные выше операции уже не давали результата. Баз стало немного больше и нужно было думать, как разгрузить сервер. Он работал на все 100% даже в нерабочее время, когда на нем не было ни одного реального пользователя. Сервис журнала регистраций потреблял 30-40% процессорного времени.
Я стал внимательно шерстить интернет на заданную тему и нашел несколько заметок. Находились люди, которые обратили внимание на чрезмерную нагрузку сервиса журнала регистраций. Как вариант решения проблемы они предлагали откатиться на старую версию ведения логов lgf вместо новой lgd. Я не знаю, что принципиально изменилось в формате ведения лога журнала регистраций, но по отзывам попробовавших, нагрузка на процессор падала. Забегая вперед скажу, что мне этот совет помог.
Переводим сервер на старый вариант ведения логов журнала регистраций
Какой-то одной настройки или автоматического решения для перевода лога журнала регистраций в старый формат lgf нет. Чтобы использовать старый формат необходимо остановить службу Агента Сервера 1С:Предприятия. Затем отправиться в папку C:\Program Files (x86)\1cv8\srvinfo\reg_1541, выбрать по id базу, в которой хотите изменить формат лога. У меня баз было много, мне лениво стало вручную в каждой менять формат. Я выбрал базы с самым большим объемом и изменил формат только у них.
В каждой папке с базой есть каталог 1Cv8Log, а в нем 2 файла: 1Cv8.lgd и 1Cv8.lgd-journal. Их надо удалить и вместо них в этой папке создать пустой файл 1Cv8.lgf. Проделать такую операцию нужно со всеми базами, где будете менять формат лога. Старый не обязательно удалять, лучше его перенести куда-нибудь, вдруг пригодятся записи из него.
После этого можно запускать службу Агента Сервера 1С:Предприятия. После перехода на старый формат журнала регистрации, нагрузка процесса rmngr.exe упала практически до 0, а сервера в целом до приемлемых 40-60%.
Заключение
После того, как вы решите все проблемы на сервере 1С, процессы менеджера кластера нужно снова объединить в 1, убрав отвечающую за этот параметр галку в свойствах рабочего сервера. 1С не рекомендует постоянно использовать такой режим работы, так как он является отладочным.
Значительное потребление памяти процессами кластера на сервере приложений
Краткое содержание:
Что требуется сделать
У кластера серверов 1С Предприятия есть несколько настроек перезапуска процессов по превышению порога памяти. Их можно найти в параметрах кластера в консоли администрирования(рис. 1).
Рис. 1. Параметры кластера.
Подробная информация по настройкам указана на странице ITS.
Рекомендуется всегда настраивать параметры
«Допустимый объем памяти» стоит устанавливать из расчета, того, что в случае срабатывания условия превышения показателя будет запущен ещё один процесс rphost того же объема, как при нормальной работе кластера серверов в этой информационной системе.
Например, на рабочем сервере имеем 12 Гб ОЗУ. Допустим для конкретной информационной системы характерен размер rphost около 3 Гб. В этом случае порог превышения памяти следует рассчитывать следующим образом:
Для случая, когда у нас при штатной работе используются два процесса rphost.
Такая рекомендация исходит из особенностей поведения в момент перезапуска процессов кластера. Как это происходит:
Т.е. в течение периода, указанного в «Выключенные процессы останавливать через» будет одновременно работать как минимум два процесса rphost: «старый» и «новый».
Не следует указывать «Допустимый объем памяти» меньше нормального рабочего объема памяти процесса rphost для вашей системы, т.к. противном случае у вас постоянно будут перезапускаться процессы кластера серверов.
следует стараться указывать как можно меньше исходя из характера нагрузки на информационную систему, например, по 60 секунд, если мы рассчитываем, что все операции (или большая их часть) должны выполниться быстрее 60 секунд.
Чем больше значения указанных параметров, тем менее эффективен может оказаться механизм перезапуска процессов, но зато позволит «успешно выполнить» большее число вызовов.
Нужно запустить batch file из директории, в которой расположен ProcDump (http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx)
echo Start dumping all rmngrs, rphosts, and ragents on this server.