원격 공유에 대한 연결 관리

웹 사이트를 가상 디렉터리에 연결하여 Windows 2000 이상을 실행하는 원격 컴퓨터에서 공유하면 IIS는 서버 메시지 블록(SMB) 작업 컨텍스트를 사용하여 원격 컴퓨터에서 디렉터리 변경 알림을 검색합니다. IIS는 변경 알림을 수신하고 ASP 템플릿 캐시의 파일과 IIS 정적 파일 캐시를 비우고 원격 공유에서 변경된 파일의 새로운 데이터로 바꿉니다.  이러한 캐시가 설정되지 않으면 IIS는 원격 공유에서 컨텐트를 검색해야 하며, ASP 페이지의 경우 모든 사용자가 요구한 것에 대해 포함하고 있는 모든 스크립트를 컴파일해야 합니다. 이러한 절차는 비용이 많이 듭니다.

기본적으로, Windows XP는 50SMB 작업 컨텍스트까지 요구를 받아들이지만 최대 2048SMB 작업자 컨텍스트를 설정할 수 있습니다. 원격 컴퓨터는 받아들이는 SMB 작업 컨텍스트 수를 제한하기 때문에 캐시된 파일을 자동으로 업데이트하면 실패할 수 있습니다. 다음 오류는 SMB 호출이 실패하는 증상입니다.

SMB 호출이 실패하면 IIS는 ASP 템플릿 캐시의 바뀌지 않은 날짜가 지난 ASP 스크립트와 IIS 정적 파일 캐시의 날짜가 지난 정적 페이지를 계속해서 지원합니다. 이런 경우 캐시를 새로 고치려면 IIS를 다시 시작해야 합니다. 원격 공유에 대한 연결과 관련된 문제는 다음과 같은 방법으로 관리할 수 있습니다.

가상 디렉터리 구조

단일 원격 컴퓨터의 데이터를 받아들이는 수천 개의 가상 디렉터리를 만들려면 넓은 것보다는 깊은 가상 디렉터리 트리를 작성합니다. IIS는 높은 수준 가상 디렉터리의 하위 디렉터리 안의 변경 내용을 모니터링합니다. 예를 들어, 단일 원격 서버에 액세스하는 가상 디렉터리 2500개에서 데이터가 필요한 경우 각각 100개의 하위 디렉터리가 있는 최상위 가상 디렉터리 25개를 만들 수 있습니다. 이렇게 하면 Windows XP 기본 제한인 클라이언트 당 50개보다 적은 수의 원격 연결이 있는 가상 디렉터리 트리를 만들 수 있습니다.

컨텐트 이동

다음 방법으로 동적 데이터 및 정적 파일 데이터에 대한 연결 제한 문제를 해결할 수 있습니다.

두 개 이상의 원격 서버 사이에서 컨텐트를 배포하면 사이트의 가상 디렉터리를 다시 구조할 필요 없이 문제를 해결할 수도 있습니다. 예를 들어, 사용자의 사이트에 대해 3000개의 가상 디렉터리를 한 원격 서버에 연결한다고 가정합시다. 컨텐트의 절반을 둘째 원격 서버로 이동하면 가상 디렉터리 절반을 둘째 원격 서버에 연결할 수 있으며, 각 원격 서버에 대한 연결 수를 15000개로 줄일 수 있습니다.

일부 컨텐트를 로컬로 저장하면 필요한 프로시저 호출의 합계를 줄여 비슷한 효과를 얻을 수 있습니다. 모든 컨텐트를 로컬 서버로 이동하거나 복제하면 원격 공유에 대한 연결 관리와 관련된 문제를 줄이고 UNC 디렉터리 변경 내용을 수신할 필요가 없어집니다.

원격 서버에 대한 연결 제한 늘리기

원격 컴퓨터에 대한 연결 제한을 클라이언트 당 최대 2048 연결로 늘리면 연결 제한 문제를 해결할 수도 있습니다. 그러면 사이트는 서버에 더 많은 동시 연결을 설정할 수 있습니다

레지스트리에 두 키를 설정하여 서버가 필요로 하는 연결 수를 최대화할 수 있습니다.

레지스트리 변경에 대한 자세한 내용은 RegEdt32.exe에 대한 도움말 항목에서 "레지스트리 편집기에서 정보 추가 및 삭제" 및 "레지스트리 데이터 편집"을 참조하십시오.

ASP 템플릿 캐시 사용 해제

위의 해결 방법 중 하나를 사용하여 연결 제한 문제를 효과적으로 해결할 수 없는 경우 변경 내용을 수신하기 위해 원격 서버에 연결할 필요성을 줄이거나 제거하여 ASP 템플릿 캐시, IIS 정적 파일 캐시 또는 둘 다를 사용 해제할 수 있습니다. 그러나 이 방법은 클라이언트에게 페이지를 배달하는 속도를 줄이고 성능을 심각하게 저하시킬 수 있습니다.

ASP 템플릿 캐시를 사용 해제하려면

  1. IIS 스냅인에서 격리된 응용 프로그램의 시작 위치 디렉터리나 웹 사이트를 선택합니다.
  2. 디렉터리의 속성 시트를 열고 응용 프로그램 설정의 구성 단추를 클릭합니다. 구성 단추가 활성화되어 있지 않으면 디렉터리나 시작 위치가 격리된 응용 프로그램을 포함하지 않은 것입니다. 만들기 단추를 클릭하여 응용 프로그램을 새로 만들 수 있습니다.

  3. 캐시 옵션 탭을 클릭합니다. 캐시 옵션 탭을 사용할 수 없으면 응용 프로그램 설정 구역의 응용 프로그램 보호가 높음(격리됨)으로 설정되었는지 확인합니다. 응용 프로그램 보호를 높음(격리됨)으로 변경하면 적용을 클릭해야 변경 내용이 적용됩니다.

  4. ASP 파일 캐시 아래에서 ASP 파일 캐시에 임시 저장 안 함을 선택합니다.
  5. 확인을 클릭합니다.
  6. IIS를 다시 시작합니다.

IIS 파일 캐시를 사용 해제하려면

  1. 다음 레지스트리 경로를 사용합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters

  2. DisableMemoryCache를 1로 설정합니다.
  3. IIS를 다시 시작합니다.

© 1997-2001 Microsoft Corporation. All rights reserved.