Citrix ADC

Mejorar el rendimiento de la caché

Puede mejorar el rendimiento de la caché integrada, incluido el manejo de solicitudes simultáneas para los mismos datos almacenados en caché, evitar retrasos asociados con la actualización de las respuestas almacenadas en caché desde el servidor de origen y garantizar que se solicite una respuesta con la frecuencia suficiente para que valga la pena almacenarla en caché.

Reducir las multitudes de flash

Las multitudes de flash ocurren cuando muchos usuarios solicitan simultáneamente los mismos datos. Todas las solicitudes en una multitud flash pueden convertirse en errores de caché si configuró la caché para servir hits solo después de descargar todo el objeto.

Las siguientes técnicas pueden reducir o eliminar las multitudes de flash:

  • PREFETCH: Actualiza una respuesta positiva antes de que caduque para asegurarse de que nunca se vuelve obsoleta o inactiva. Para obtener más información, consulte la sección “Actualización de una respuesta antes de la expiración”.
  • Almacenamiento en búfer de caché: Comienza a servir una respuesta a varios clientes tan pronto como recibe el encabezado de respuesta del servidor de origen, en lugar de esperar a que se descargue toda la respuesta. El único límite en el número de clientes que pueden descargar una respuesta simultáneamente son los recursos del sistema disponibles. El dispositivo Citrix ADC descarga y ofrece respuestas incluso si el cliente que inició la descarga se detiene antes de que se complete la descarga. Si el tamaño de la respuesta excede el tamaño de la caché o si la respuesta está fragmentada, la caché deja de almacenar la respuesta, pero el servicio a los clientes no se interrumpe.
  • Caché Flash: Caché Flash pone en cola las solicitudes en la caché y permite que solo una solicitud llegue al servidor a la vez.

Para obtener más información, consulte la sección “Solicitudes de cola en la caché”.

Actualizar una respuesta antes de la expiración

Para asegurarse de que una respuesta almacenada en caché esté fresca siempre que sea necesaria, la opción PREFETCH actualiza una respuesta antes de su tiempo de caducidad calculado. El intervalo de captura previa se calcula después de recibir la primera solicitud del cliente. A partir de ese momento, el dispositivo Citrix ADC actualiza la respuesta almacenada en caché en un intervalo de tiempo que se configura en el parámetro PREFETCH.

Esta configuración es útil para los datos que se actualizan con frecuencia entre las solicitudes. No se aplica a las respuestas negativas (por ejemplo, 404 mensajes).

Para configurar la captura previa de un grupo de contenido mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set cache contentgroup <name> -prefetch YES [-prefetchPeriod <seconds> | -prefetchPeriodMilliSec <milliseconds>] [-prefetchMaxPending <positiveInteger>]

*Para configurar la captura previa de un grupo de contenido mediante la interfaz gráfica de usuario

Vaya a Optimización > Almacenamiento en caché integrado > Grupos de contenido y seleccione el grupo de contenido.

En la ficha Otros, en el grupo Flash Crowd y Prefetch, seleccione la opción Prefetch y especifique los valores en los cuadros de texto Intervalo y Número máximo de recuperaciones previas pendientes.

Solicitudes de cola en la caché

La opción Caché Flash pone en cola las solicitudes que llegan simultáneamente (una multitud flash), recupera la respuesta y la distribuye a todos los clientes cuyas solicitudes están en la cola. Si, durante este proceso, la respuesta no se puede almacenar en caché, el dispositivo Citrix ADC deja de servir la respuesta desde la caché y, en su lugar, sirve la respuesta del servidor de origen a los clientes en cola. Si la respuesta no está disponible, los clientes recibirán un mensaje de error.

Flash Cache está inhabilitado de forma predeterminada. No puede habilitar la encuesta cada vez (PET) y la caché de Flash en el mismo grupo de contenido.

Una desventaja de Flash Cache es que si el servidor responde con un error (por ejemplo, un 404 que se soluciona rápidamente), el error se aviva a los clientes en espera.

Nota: Si Flash Cache está habilitado, en algunas situaciones el dispositivo Citrix ADC no puede hacer coincidir correctamente el encabezado Accept-Encoding en la solicitud del cliente con el encabezado Content-Encoding en la respuesta. El dispositivo Citrix ADC puede suponer que estos encabezados coinciden y dan un resultado erróneo. Como solución alternativa, puede configurar las directivas de almacenamiento en caché integrado para que no permita el servicio de visitas a clientes que no tengan un encabezado Accept-Encoding apropiado.

Para habilitar Flash Cache mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set cache contentgroup <contentGroupName> -flashcache yes

Para habilitar Flash Cache mediante la interfaz gráfica de usuario

Vaya a Optimización > Almacenamiento en caché integrado > Grupos de contenido y seleccione el grupo de contenido.

En la ficha Otros, en el grupo Flash Crowd y Prefetch, seleccione la opción Prefetch.

Caché una respuesta después de que un cliente detenga una descarga

Puede establecer el parámetro Abortar rápido para continuar almacenando en caché una respuesta, incluso si el cliente detiene una solicitud antes de que la respuesta esté en la caché.

Si el tamaño de respuesta descargado es menor o igual que el tamaño de Abortar rápido, el dispositivo Citrix ADC deja de descargar la respuesta. Si establece el parámetro Abortar rápido en 0, todas las descargas se detienen.

Para configurar el tamaño de anulación rápida mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set cache contentgroup <name> -quickAbortSize <integerInKBytes>

Para configurar el tamaño de anulación rápida mediante la interfaz gráfica de usuario

  1. Vaya a Optimización > Almacenamiento en caché integrado > Grupos de contenido y seleccione el grupo de contenido.
  2. En la ficha Memoria, establezca el valor relevante en Abortar rápido: Continuar el almacenamiento en caché si hay más de cuadro de texto.

Requerir un número mínimo de visitas de servidor antes de almacenar en caché

Puede configurar el número mínimo de veces que se debe encontrar una respuesta en el servidor de origen antes de que se pueda almacenar en caché. Debería considerar aumentar los hits mínimos si la memoria caché se llena rápidamente y tiene una proporción de aciertos menor de lo esperado.

El valor predeterminado para el número mínimo de visitas es 0. Este valor almacena en caché la respuesta después de la primera solicitud.

Para configurar el número mínimo de visitas que se requieren antes del almacenamiento en caché mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set cache contentgroup <name> -minhits <positiveInteger>

Para configurar el número mínimo de visitas que se requieren antes del almacenamiento en caché mediante la interfaz gráfica de usuario

  1. Vaya a Optimización > Almacenamiento en caché integrado > Grupos de contenido y seleccione el grupo de contenido.
  2. En la ficha Memoria, establezca el valor relevante en No almacenar en caché, si las visitas son menores que el cuadro de texto.

Ejemplo de optimización del rendimiento

En este ejemplo, un cliente accede a una cotización de acciones. Las cotizaciones bursátiles son muy dinámicas. Configure la caché integrada para que sirva la misma cotización de stock a clientes simultáneos sin enviar varias solicitudes al servidor de origen. La cotización de stock caduca después de que se descargue a todos los clientes, y la siguiente solicitud de cotización para el mismo stock se obtiene del servidor de origen. Esto garantiza que la cotización esté siempre actualizada.

La siguiente descripción general de la tarea describe los pasos para configurar la caché para la aplicación de cotización de stock.

Configurar el almacenamiento en caché para una aplicación de cotización de acciones

Crear un grupo de contenido para cotizaciones de acciones

Para obtener más información, consulte “Acerca de los grupos de contenido.”

Configure lo siguiente para este grupo de contenido:

  1. En la ficha Método de caducidad, active la casilla de verificación Expirar después de que se haya recibido la respuesta completa.
  2. En la ficha Otros, active la casilla de verificación Caché Flash y haga clic en Crear.
  3. Agregue una directiva de caché para almacenar en caché las cotizaciones de acciones.

Para obtener más información, consulte “Configuración de una directiva en la caché integrada.”

Configure lo siguiente para la directiva

  1. En las listas Acción y Almacenar en grupo, seleccione CACHE y seleccione el grupo que definió en el paso anterior.
  2. Haga clic en Agregar y, en el cuadro de diálogo Agregar expresión, configure una expresión que identifique las solicitudes de cotización de acciones, por ejemplo: Http.req.url.contains (“cgi-bin/stock-quote.pl”)
  3. Active la directiva.

Para obtener más información, consulte “Vinculación global de una directiva de almacenamiento en caché integrada.” En este ejemplo, vincula esta directiva para el procesamiento de anulación de tiempo de solicitud y establece la prioridad en un valor bajo.