Windows Server 2008 R2의 이상한 메모리 사용 가능한 모든 메모리를 계속 사용하고 있습니다.

누군가 도울 수 있기를 바랍니다. 우리는 16GB RAM을 가진 Windows Server 2008 R2 시스템을 가지고 있으며 사용 가능한 모든 메모리를 계속 사용하고 있습니다. 의 어떠한 작업 관리자 또는 리소스 모니터 3백메가바이트 위의 메모리를 사용하는 과정을 보여준다하지 …하지만 서버의 메모리 사용량은 15.7GB입니다.

SQL Server 2008IIS7.5 (ASP.Net 포함) 만 실행됩니다 .

참고 : 재부팅 후 RAM 사용량이 낮게 시작되어 작동합니다. 일주일 정도 지나면 우리는이 상황에서 스스로를 계속 찾습니다.

우리의 모든 기억을 먹고있는 것을 어떻게 알 수 있습니까? 🙁



답변

이 서버는 64 비트 서버입니까? 메모리 로컬 정책의 잠금 페이지를 사용합니까? SQL이 나머지 메모리를 소비 할 가능성이 있음 perfmon 카운터를 보면 메모리 할당이 표시됩니다.

여기에 깊이를 설명하는 기사가 있습니다.

SQL에서 카운터를 볼 수도 있습니다

SELECT
    object_name
   ,Counter_name
   ,cntr_value
   ,ROUND(( cntr_value * 8192.0 ) / 1048576, 0) AS cntr_value_MB
FROM
    sys.dm_os_performance_counters
WHERE
    object_Name LIKE '%Buffer Manager%'
    AND RTRIM(counter_name) IN ( 'Free pages', 'Total pages',
                                 'Database pages' )
UNION SELECT
    object_name
   ,Counter_name
   ,cntr_value
   ,ROUND(( cntr_value / 1024 ), 0) AS cntr_value_MB
FROM
    sys.dm_os_performance_counters
WHERE
    counter_name IN ( 'Target Server Memory (KB)',
                      'Total Server Memory (KB)' )

답변

빠른 테스트 : SQL Server를 다시 시작하십시오.
또 다른 빠른 테스트 : IIS를 다시 시작하십시오.

그들 중 하나가 범인인지 또는 다른 곳을 봐야하는지 확실히 알 수 있습니다.


답변

RamMap 을 사용 하여 메모리가 어디로 가는지 확인 하는 것이 도움이 될 수 있습니다 .


답변

실제로 메모리 관련 문제가 있습니까?

메모리 사용량 이 실제 설치된 메모리보다 높아지 거나 채워져 그대로 유지됩니까?

메모리가 가득 찼지만 아무런 문제가 없다면 캐시는 작업을 수행하는 것입니다. 메모리는 실제로 필요할 때 자동으로 실현됩니다 .

메모리 사용량이 물리적 한계를 초과하고 서버가 중단되면 약간의 메모리 누수가 발생하여 메모리를 디버깅해야합니다.

“캐시”주제에 대한 흥미로운 기사 :

http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx
http://blogs.msdn.com/ntdebugging/archive/2007/10/10/the-memory -shell-game.aspx
http://blogs.msdn.com/ntdebugging/archive/2009/02/06/microsoft-windows-dynamic-cache-service.aspx


답변

다른 스레드의 누군가가 제안한대로 Perfmon (특히 SQL 카운터)을 검사 했습니까?


답변

첫 번째는 이전에 말했듯이 패치하여 문제가 해결되는지 확인하는 것입니다.

둘째, 그래도 작동하지 않으면 프로세스 탐색기 를 사용하여 메모리 사용량을 더 잘 살펴보십시오. 보기 메뉴로 이동 한 다음 열 선택, 메모리 처리 및 개인 바이트, 가상 크기 및 작업 세트 크기 옵션을 확인하십시오. 그것이 여기에 책임이있는 것을 나타내는 지보십시오.

그런 다음 서비스를 중단하는 것이 과감한 접근 방식입니다. 예를 들어 응용 프로그램 풀과 웹 가든이 잘못 구성되어 (너무 많은 경우) IIS는 총 메모리 피그가 될 수 있습니다.

행운을 빕니다!