안녕하세요 최민아,
수천만 개의 파일을 포함하는 서버에서 SmsEngine.exe의 메모리 부족(Out-of-Memory) 예외로 인해 SMS 인벤토리 작업이 실패하는 경우, 근본적인 원인은 인벤토리 엔진이 단일 실행으로 그토록 방대한 수의 파일을 처리하도록 설계되지 않았기 때문입니다. SMS 클라이언트 내에서 힙(heap) 할당을 조정하거나 멀티스레딩 옵션을 활성화하는 방법은 지원되지 않으며, 해당 실행 파일은 메모리 제한을 위한 조정 가능한 매개변수를 제공하지 않습니다. 권장되는 해결책은 클라이언트 에이전트 설정을 통해 중요하지 않은 디렉터리를 제외하여 인벤토리 수집 범위를 줄이거나, 여러 파일 공유로 작업 부하를 분산시켜 각 인벤토리 주기마다 더 적은 수의 파일을 처리하도록 하는 것입니다.
또한 Microsoft에서 인벤토리 확장성과 메모리 처리 기능을 개선한 업데이트를 배포했으므로, 클라이언트 에이전트가 최신 핫픽스 수준으로 실행되고 있는지 확인해야 합니다. 제외 설정이 불가능하다면, 표준 SMS 파일 인벤토리에 의존하는 대신 Configuration Manager의 Asset Intelligence 또는 결과를 SQL에 기록하는 사용자 지정 스크립트로 파일 인벤토리 기능을 전환하는 것을 고려해 보십시오. 이렇게 하면 SmsEngine.exe의 32비트 프로세스 공간이 고갈되는 문제를 피할 수 있습니다. 요약하자면, 힙이나 스레드 수를 늘리기 위해 지원되는 레지스트리 설정이나 명령줄 스위치는 없으며, 안전한 방법은 작업 부하를 줄이거나 인벤토리 수집 방식을 아키텍처 차원에서 재설계하는 것입니다.
제 답변이 도움이 되었다면 **'답변 채택(Accept the answer)'**을 눌러 주시기 바랍니다.
감사합니다.
HL.