응용 프로그램 계층 서버에 대한 캐시 설정 변경

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

애플리케이션 계층 서버에서 버전 제어를 받고 있는 파일에 대한 캐시 설정을 변경하여 Azure DevOps Server 배포에서 성능을 높이거나 균형을 맞출 수 있습니다. 기본적으로 이 캐시는 사용자가 데이터베이스에서 직접 다운로드하지 않고 캐시에서 신속하게 파일을 다운로드할 수 있도록 사용하도록 설정됩니다. 관리자는 언제든지 이 캐시의 설정을 변경할 수 있습니다.

애플리케이션 계층 서버의 설치 디렉터리에 있는 버전 제어에 대한 web.config 파일을 편집하여 이러한 작업을 수행할 수 있습니다.

참고

기본적으로 애플리케이션 계층의 설치 디렉터리가 %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services입니다.

사전 요구 사항

이러한 절차를 수행하려면 Azure DevOps용 애플리케이션 계층 서버에서 Administrators 보안 그룹의 구성원이어야 합니다.

자세한 내용은 사용자 계정 컨트롤을 참조하십시오.

다른 캐시 루트 폴더 지정

  1. 응용 프로그램 계층 서버에서 캐시 폴더를 만듭니다.

    로컬 디스크, UNC 경로 또는 탑재된 드라이브에 해당 폴더를 만들 수 있습니다. 예를 들어 다음 폴더를 만들 수 있습니다.

    d:\temp\cacheroot

    중요

    캐시 폴더는 암호화되지 않은 중요한 정보를 저장합니다. 따라서 애플리케이션 계층(TFSService)의 서비스 계정에만 이 폴더에 대한 수정 권한이 있는지 확인해야 합니다.

  2. 폴더의 바로 가기 메뉴를 열고 속성을 선택합니다.

    폴더의 속성 대화 상자가 열립니다.

  3. 보안 탭에서 편집을 선택합니다.

    권한 대화 상자 열립니다.

  4. 추가를 선택합니다.

    사용자, 컴퓨터 또는 그룹 선택 대화 상자가 열립니다.

  5. 로컬 그룹 TFS_APPTIER_SERVICE_WPG 추가한 다음 확인을 선택합니다.

  6. 검사 수정 상자를 선택하고 다른 모든 검사 상자의 선택을 취소한 다음 확인을 선택합니다.

  7. Windows Explorer(또는 파일 탐색기)에서 %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services로 이동합니다.

  8. 텍스트 또는 XML 편집기에서 web.config 파일을 열고 섹션을 찾습니다 <appSettings> .

  9. 섹션에 appSettings 줄을 추가하여 방금 만든 폴더를 가리킵니다.

    <add key="dataDirectory" value="NewCacheRootFolderLocation" />
    

    예를 들어 이전 예제와 같이 하드 드라이브의 임시 디렉터리에 cacheroot라는 캐시 루트 폴더를 만든 경우 다음 줄을 추가합니다.

    <add key="dataDirectory" value="d:\temp\cacheroot" />
    
  10. web.config 파일을 저장하고 닫습니다.

    참고

    성능을 극대화하려면 이전 캐시 폴더에서 새 캐시 폴더로 파일을 복사합니다.

  11. 명령 프롬프트 창을 열고 iisreset을 입력한 다음 Enter 키를 누릅니다.

  12. 이전 캐시 루트 폴더를 삭제합니다.

    참고

    기본적으로 캐시 루트 폴더는 %programfiles%\Azure DevOps Server 2019\Version Control Proxy\Web Services\VersionControlProxy\Data에 있습니다.

캐시에서 파일을 제거하기 위한 제한 변경

응용 프로그램 계층 서버에서 파일 캐싱에 사용할 수 있는 저장소 공간의 최대 한도를 변경할 수 있습니다. 이 제한에 도달하면 정리 루틴은 가장 오래된 액세스 시간이 있는 파일을 삭제하여 새로 요청된 파일을 위한 공간을 만듭니다.

캐시에서 이전 파일이 제거되는 제한 변경

  1. 애플리케이션 계층 서버에서 Windows Explorer(또는 파일 탐색기)을 열고 \%programfiles%\Azure DevOps Server 2019\Application Tier\Web Services로 이동합니다.

  2. 텍스트 또는 XML 편집기에서 web.config 파일을 열고 요소를 찾습니다 \<appSettings\> .

  3. 다음 요소 중 하나를 추가합니다.

    • 이전 파일을 제거하기 전에 채울 사용 가능한 디스크 공간의 백분율을 지정하려면 요소를 추가합니다 PercentageBasedPolicy . 이 요소의 값으로 정수를 지정해야 합니다.

      예를 들어 다음 줄은 오래된 파일이 제거되기 전에 캐시가 사용 가능한 디스크 공간의 60%를 채우도록 지정합니다.

      <add key="PercentageBasedPolicy" value="60" />
      
    • 이전 파일을 제거하기 전에 캐시에 도달할 고정 크기를 MB로 지정하려면 요소를 추가합니다 FixedSizeBasedPolicy . 이 요소의 값으로 정수를 지정해야 합니다.

      예를 들어 다음 줄은 오래된 파일이 제거되기 전에 캐시가 500MB에 도달하도록 지정합니다.

      <add key="FixedSizeBasedPolicy" value="500" />
      

      참고

      PercentageBasedPolicy 요소를 모두 FixedSizeBasedPolicy 지정하면 요소 값 FixedSizeBasedPolicy 대신 요소 값이 PercentageBasedPolicy 사용됩니다.

  4. web.config 파일을 저장하고 닫습니다.

  5. 명령 프롬프트 창을 열고 iisreset을 입력한 다음 Enter 키를 누릅니다.

이전 파일을 제거할 때 캐시 양을 해제로 변경합니다.

  1. 애플리케이션 계층 서버에서 Windows Explorer(또는 파일 탐색기)을 열고 %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services\로 이동합니다.

  2. 텍스트 또는 XML 편집기에서 web.config 파일을 열고 요소를 찾 <appSettings> 은 다음 요소를 추가합니다 CacheDeletionPercent .

    예를 들어 다음 줄은 오래된 파일을 제거할 때 캐시의 50%를 확보하도록 지정합니다.

    <add key="CacheDeletionPercent" value="50" />
    
  3. web.config 파일을 저장하고 닫습니다.

  4. 명령 프롬프트 창을 열고 iisreset을 입력한 다음 Enter 키를 누릅니다.

관련 문서