우리 시스템에는 개인 및 공용 큐의 여러 MSMQ 큐가 있습니다. 때로는 대기열에서 읽는 Windows 서비스가 중단되므로 메시지가 해당 대기열에 작성됩니다. 대기열이 특정 크기 (아마도 60,000 개의 메시지)가되면 해당 서버의 모든 대기열이 작동을 멈추고 불충분 한 자원에 대한 오류가 발생합니다.MSMQ에 저장할 수있는 메시지 수를 늘리는 방법
제 질문은 큐가 실제로 백그라운드에서 어떻게 작동하는지, 메시지를 RAM 또는 하드 드라이브에 저장하는 것입니까? 서버에서 RAM이 부족하면 리소스가 부족하여 충돌이 발생합니까? 하드 드라이브에 할당 된 공간을 사용하는 경우 허용되는 크기를 늘릴 수있는 방법이 있습니까? RAM을 사용하는 경우 서버에 RAM을 추가하면 허용되는 크기가 커질 수 있습니까?
서비스가 중단 될 때 서비스를 수정하는 동안 해당 대기열에 100K 또는 200K 메시지를 저장할 수 있는지 확인해야합니다. 메시지가 우리 업무에 중요하기 때문입니다.
60,000 개의 메시지는 간단한 양이기 때문에 시작하기 전에 서버의 커널 메모리가 이미 부족해야합니다. RAM을 추가하면 커널 메모리를 최대화 할 수있는 충분한 RAM을 갖춘 최신 머신이되므로 도움이되지 않습니다. 대신 커널 메모리 돼지를 식별하고 제거해야합니다. 잘 구성된 시스템은 수백만 개의 메시지를 처리 할 수 있습니다. –