phone +7 (495) 66 014 66

× Общий раздел

Высокая загрузка CPU на сервере приложений

5 года 9 мес. назад #4928 от Дмитрий
Высокая загрузка CPU на сервере приложений
Краткое содержание:

По данным счетчика Processor(_Total)\% Processor Time видим 100% использование CPU на сервере приложений.

Что делать?
Что требуется сделать
1. Подключиться к указанному серверу
2. Запускаем Process Explorer
3. Находим процесс-виновника
4. Если виновник - rphost
o Заходим в консоль администрирования кластера серверов
o Находим сеансы, находящиеся в длительном клиент-серверном вызове (колонка "Время вызова (текущее)") и не в вызове СУБД (колонка "Время вызова СУБД (текущее)")
o Записываем их номера и время начала сеансов, записываем их базы
o Завершаем сеансы
o Убеждаемся, что нагрузка упала
o Расследуем по журналу регистрации, какой именно сценарий отрабатывали завершенные сеансы (Что именно они делали?)
5. Если виновник rmngr
o Находим сеансы, находящиеся в длительном клиент-серверном вызове (колонка "Время вызова (текущее)") и не в вызове СУБД (колонка "Время вызова СУБД (текущее)")
o Записываем их номера и время начала сеансов, записываем их базы
o По журналу регистрации пробуем понять, что делают сеансы.
o Если виновник не понятен, то снимаем дамп с помощью утилиты ProcDump technet.microsoft.com/en-us/sysinternals/dd996900.asp
o Полученные дампы и технологические журналы (если собирались) отправляем в 1С с подробным описанием проблемы и симптомов
Batch file для получения дампов кластера серверов 1С.
Batch файл рекомендуется к использования при необходимости получения дампов кластера серверов.
Нужно запустить batch file из директории, в которой расположен ProcDump
@ echo off
echo Start dumping all rmngrs, rphosts and ragents on this server...
CD %~dp0
for /f "usebackq tokens=2" %%a in (`tasklist /FO list /FI "IMAGENAME eq rmngr.exe" ^| find /i "PID:"`) do (
start /b procdump.exe -ma %%a rmngr_%%a)
for /f "usebackq tokens=2" %%a in (`tasklist /FO list /FI "IMAGENAME eq rphost.exe" ^| find /i "PID:"`) do (
start /b procdump.exe -ma %%a rphost_%%a)
for /f "usebackq tokens=2" %%a in (`tasklist /FO list /FI "IMAGENAME eq ragent.exe" ^| find /i "PID:"`) do (
start /b procdump.exe -ma %%a ragent_%%a)
pause

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.069 секунд