Cambiar configuración de memoria caché para un servidor de capa 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 memoria 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.

Para realizar estas tareas, edite 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.

Requisitos previos

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

Para más información, vea User Account Control (Control de cuentas de usuario).

Especificar una carpeta raíz de caché diferente

  1. En el servidor de capa 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 la memoria 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 Modificar en esta carpeta.

  2. Abra el menú contextual de la carpeta y, a continuación, 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. Seleccione 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é anterior a la nueva.

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

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

    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 de espacio de almacenamiento que el servidor de capa de aplicación puede usar para almacenar archivos en memoria caché. 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 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 elementos siguientes:

    • 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 valor de este elemento.

      Por ejemplo, la siguiente línea especifica que la memoria caché se debe llenar hasta un 60% de la capacidad de espacio en disco disponible antes de que se quiten los archivos anteriores:

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

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

      <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.

Cambie la cantidad de memoria caché que se liberará al quitar los archivos antiguos.

  1. En el servidor de nivel de aplicación, abra el Explorador de Windows (o 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 siguiente línea especifica que se libere un 50 % de la memoria caché cuando se quiten los archivos anteriores:

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

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

Artículo relacionado