oldhasu
01-09-2017, 10:56
Добрый день! Очень давно не могу решить проблему с сервером Windows Server 2003 R2. Переполняется пул невыгружаемой памяти, все сервисы на машине отваливаются. Происходит примерно с переодичностью в ~1.5 месяца, помогает только холодный ребут.
Собирал скриншоты из Poolmon:
http://imgur.com/a/se6fo
Первые три скрина сделал в первый день после зависания, после этого уменьшал объем доступной памяти для sql сервера и остальные скрины уже с переодичностью один или несколько дней. Ленился/забывал иногда про это дело :) Последний скрин сделан за неделю до очередного зависания, там уже прослеживаются, вроде как, таги которые больше всего сжирают. Что с этим делать дальше не знаю. Говорят надо смотреть при помощи Strings, гонял вот такой скрипт
@echo off
set TAG=NpfF
for /f "delims=" %%a in ('wmic sysdriver get PathName /value') do (
for /f "tokens=2,* delims==?" %%i in ("%%a") do (
strings -q "%%i\%%j" | findstr /i "%TAG%">nul && (
sigcheck -q "%%i\%%j"&echo.
)))
pause
по всем тагам, ничего не выдает.
Не представляю что делать, как искать источник проблемы.
Собирал скриншоты из Poolmon:
http://imgur.com/a/se6fo
Первые три скрина сделал в первый день после зависания, после этого уменьшал объем доступной памяти для sql сервера и остальные скрины уже с переодичностью один или несколько дней. Ленился/забывал иногда про это дело :) Последний скрин сделан за неделю до очередного зависания, там уже прослеживаются, вроде как, таги которые больше всего сжирают. Что с этим делать дальше не знаю. Говорят надо смотреть при помощи Strings, гонял вот такой скрипт
@echo off
set TAG=NpfF
for /f "delims=" %%a in ('wmic sysdriver get PathName /value') do (
for /f "tokens=2,* delims==?" %%i in ("%%a") do (
strings -q "%%i\%%j" | findstr /i "%TAG%">nul && (
sigcheck -q "%%i\%%j"&echo.
)))
pause
по всем тагам, ничего не выдает.
Не представляю что делать, как искать источник проблемы.