Compartir a través de


Cambio de la configuración de caché de un servidor de nivel de aplicación

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

Puede ayudar a aumentar o equilibrar el rendimiento en la implementación de Azure DevOps Server cambiando la configuración de la caché de los archivos que están bajo control de versiones en el servidor de nivel de aplicación. De forma predeterminada, esta caché está habilitada para que los usuarios puedan descargar archivos rápidamente desde la memoria caché, en lugar de directamente desde la base de datos. Como administrador, puede cambiar la configuración de esta memoria caché en cualquier momento.

Puede realizar estas tareas editando el archivo web.config para el control de versiones, que se encuentra en el directorio de instalación del servidor de nivel de aplicación.

Nota:

De forma predeterminada, el directorio de instalación del nivel de aplicación es %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services.

Prerrequisitos

Para realizar estos procedimientos, debe ser miembro del grupo de seguridad Administradores en el servidor de nivel de aplicación para Azure DevOps.

Para obtener más información, consulte Control de cuentas de usuario.

Especificar una carpeta raíz de caché diferente

  1. En el servidor de nivel de aplicación, cree una carpeta de caché.

    Puede crear la carpeta en un disco local, en la ruta de acceso UNC o en una unidad montada. Por ejemplo, puede crear la carpeta siguiente:

    d:\temp\cacheroot

    Importante

    La carpeta de caché almacena información confidencial que no está cifrada. Por lo tanto, debe asegurarse de que solo la cuenta de servicio del nivel de aplicación (TFSService) tenga permisos Modify en esta carpeta.

  2. Abra el menú contextual de la carpeta y seleccione Propiedades.

    Se abre el cuadro de diálogo Propiedades de la carpeta .

  3. En la pestaña Seguridad , seleccione Editar.

    Se abre el cuadro de diálogo Permisos .

  4. Selecciona Agregar.

    Se abre el cuadro de diálogo Seleccionar usuarios, equipos o grupos .

  5. Agregue el grupo local TFS_APPTIER_SERVICE_WPG y, a continuación, seleccione Aceptar.

  6. Active la casilla Modificar , desactive todas las demás casillas y, a continuación, seleccione Aceptar.

  7. En el Explorador de Windows (o explorador de archivos), vaya a %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services.

  8. Abra el archivo web.config en un editor XML o de texto y, a continuación, busque la <appSettings> sección .

  9. Agregue una línea a la appSettings sección para que apunte a la carpeta que acaba de crear:

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

    Por ejemplo, agregaría la siguiente línea si creó una carpeta raíz de caché denominada cacheroot en el directorio temporal de un disco duro, como en el ejemplo anterior:

    <add key="dataDirectory" value="d:\temp\cacheroot" />
    
  10. Guarde y cierre el archivo web.config .

    Nota:

    Para maximizar el rendimiento, copie los archivos de la carpeta de caché antigua en la nueva carpeta de caché.

  11. Abra una ventana del símbolo del sistema, escriba iisreset y presione ENTRAR.

  12. Elimine la carpeta raíz de caché antigua.

    Nota:

    De forma predeterminada, la carpeta raíz de caché se encuentra en %programfiles%\Azure DevOps Server 2019\Version Control Proxy\Web Services\VersionControlProxy\Data.

Cambiar los límites para quitar archivos de la memoria caché

Puede cambiar el límite máximo en la cantidad de espacio de almacenamiento que el servidor de nivel de aplicación puede usar para almacenar en caché los archivos. Cuando se alcanza este límite, una rutina de limpieza hace espacio para los archivos recién solicitados eliminando los archivos con los tiempos de acceso más antiguos.

Cambiar el límite en el que se quitan los archivos antiguos de la memoria caché

  1. En el servidor de nivel de aplicación, abra el Explorador de Windows (o el Explorador de archivos) y vaya a \%programfiles%\Azure DevOps Server 2019\Application Tier\Web Services.

  2. Abra el archivo web.config en un editor XML o de texto y, a continuación, busque el \<appSettings\> elemento .

  3. Agregue uno de los siguientes elementos:

    • Para especificar un porcentaje de espacio disponible en disco que se va a rellenar antes de quitar los archivos antiguos, agregue el PercentageBasedPolicy elemento . Debe especificar un número entero como el valor de este elemento.

      Por ejemplo, la línea siguiente especifica que la memoria caché debe rellenar hasta 60% capacidad de espacio disponible en disco antes de quitar los archivos antiguos:

      <add key="PercentageBasedPolicy" value="60" />
      
    • Para especificar un tamaño fijo en MB para que la memoria caché alcance antes de quitar los archivos antiguos, agregue el FixedSizeBasedPolicy elemento . Debe especificar un número entero como el valor de este elemento.

      Por ejemplo, la línea siguiente especifica que la memoria caché debe alcanzar 500 MB antes de quitar los archivos antiguos:

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

      Nota:

      Si se especifican los FixedSizeBasedPolicy elementos y PercentageBasedPolicy , se usa el valor del FixedSizeBasedPolicy elemento en lugar del valor del PercentageBasedPolicy elemento.

  4. Guarde y cierre el archivo web.config .

  5. Abra una ventana del símbolo del sistema, escriba iisreset y presione ENTRAR.

Cambio de la cantidad de caché que se va a liberar al quitar archivos antiguos

  1. En el servidor de nivel de aplicación, abra el Explorador de Windows (o el Explorador de archivos) y vaya a %programfiles%\Azure DevOps Server 2019\Application Tier\Web Services\.

  2. Abra el archivo web.config en un editor XML o de texto, busque el <appSettings> elemento y agregue el CacheDeletionPercent elemento.

    Por ejemplo, la línea siguiente especifica liberar 50% de la memoria caché al quitar archivos antiguos:

    <add key="CacheDeletionPercent" value="50" />
    
  3. Guarde y cierre el archivo web.config .

  4. Abra una terminal, introduzca iisreset y presione Intro.

Artículo relacionado