Citrix ADC

Almacenamiento en caché integrado

Grupos de contenido

  • ¿En qué se diferencia un grupo de contenido DEFAULT de otros grupos de contenido?

    El comportamiento del grupo de contenido DEFAULT es el mismo que cualquier otro grupo. El único atributo que hace que el grupo de contenido DEFAULT sea especial es que si un objeto se está almacenando en caché y no se ha creado ningún grupo de contenido. El objeto se almacena en caché en el grupo DEFAULT.

  • ¿Cuál es la opción ‘Cache-Control’ del nivel de grupo de contenido?

    Puede enviar cualquier encabezado de control de caché al explorador. Hay una opción de nivel de grupo de contenido, -CacheControl, que le permite especificar el encabezado de control de caché que quiere insertar en la respuesta al explorador.

  • ¿Cuál es la opción ‘Minhit’ en el nivel de grupo de contenido?

    Minhit es un valor entero que especifica el número mínimo de selección de una directiva de caché antes de que el objeto se almacene en caché. Este valor se puede configurar en el nivel de grupo de contenido. A continuación se muestra la sintaxis para configurar este valor desde la CLI.

    add/set cache contentGroup \<Content_Group_Name> [-minHits \<Integer>]

  • ¿Cuál es el uso de la opción ExpireAtlastByte?

    La opción ExpireAtLastByte permite que la caché integrada caduque el objeto cuando se descarga. Solo las solicitudes que son solicitudes pendientes se sirven desde la caché. Las solicitudes nuevas se envían al servidor. Esta configuración es útil cuando el objeto se modifica con frecuencia, como en el caso de las cotizaciones de valores. Este mecanismo de caducidad funciona junto con la función Flash Cache. Para configurar una opción ExpireatLastByte, ejecute el siguiente comando desde la CLI:

    add cache contentGroup \<Group_Name> –expireAtLastByte YES

Directiva de caché

  • ¿Qué es una directiva de almacenamiento en caché?

    Las directivas determinan qué transacciones se pueden almacenar en caché y cuáles no. Además, las directivas agregan o anulan el comportamiento estándar de almacenamiento en caché HTTP. Las directivas determinan una acción, como CACHE o NOCACHE, según las funciones específicas de la solicitud o respuesta. Si una respuesta coincide con las reglas de directiva, el objeto de la respuesta se agrega al grupo de contenido configurado en la directiva. Si no ha configurado un grupo de contenido, el objeto se agrega al grupo de contenido DEFAULT.

  • ¿Qué es una directiva acción?

    Una selección se produce cuando una solicitud o respuesta coincide con una directiva de caché.

  • ¿Qué es un error?

    Se produce un error cuando una solicitud o respuesta no coincide con ninguna directiva de caché. También puede producirse una falla si la solicitud o respuesta coincide con una directiva de caché, pero alguna anulación del comportamiento de RFC impide que el objeto se almacene en la caché.

  • He configurado la función de almacenamiento en caché integrado del dispositivo Citrix ADC. Al agregar la directiva siguiente, aparece un mensaje de error. ¿Hay algún error en el comando?

    add cache policy image_caching -rule exp1 | ns_ext_not_jpeg –action cache

    \> ERROR: No such command

    En el comando anterior, la expresión debe estar entre comillas. Sin comillas, se considera que el operador es el operador de proceso.

Requisitos de memoria

  • ¿Cuáles son los comandos que puedo ejecutar en el dispositivo Citrix ADC para comprobar la memoria asignada a la caché?

    Para mostrar la memoria asignada para la caché en el dispositivo Citrix ADC, ejecute cualquiera de los siguientes comandos desde la CLI:

    • show cache parameter

      En la salida, compruebe el valor del parámetro de límite de uso de memoria. Esta es la memoria máxima asignada para la caché.

    • show cache \<Content_Group_Name>

      En la salida, compruebe los valores de los parámetros Uso de memoria y Límite de uso de memoria que indican la memoria utilizada y asignada para el grupo de contenido individual.

  • Mi dispositivo Citrix ADC tiene 2 GB de memoria. ¿Hay algún límite de memoria recomendado para la caché?

    Para cualquier modelo del dispositivo Citrix ADC, puede asignar la mitad de la memoria a la caché. Sin embargo, Citrix recomienda asignar un poco menos de la mitad de la memoria, debido a la dependencia interna de la memoria. Puede ejecutar el siguiente comando para asignar 1 GB de memoria a la caché:

    set cache parameter -memLimit 1024

  • ¿Es posible asignar memoria para grupos de contenido individuales?

    Sí. Aunque asigne memoria para la caché integrada globalmente ejecutando el parámetro set cache —memlimit <Integer>, puede asignar memoria a grupos de contenido individuales ejecutando el <Content_Group_Name> <Integer> comando set cache —memLimit. La memoria máxima que puede asignar a grupos de contenido (combinada) no puede exceder la memoria asignada a la caché integrada.

  • ¿Cuál es la dependencia de la memoria entre la caché integrada y el búfer TCP?

    Si el dispositivo Citrix ADC tiene 2 GB de memoria, el dispositivo reserva entre 800 MB y 900 MB de memoria y el resto se asigna al sistema operativo FreeBSD. Por lo tanto, puede asignar hasta 512 MB de memoria a la caché integrada y el resto se asigna al búfer TCP.

  • ¿Afecta al proceso de almacenamiento en caché si no asigno memoria global a la caché integrada?

    Si no asigna memoria a la caché integrada, todas las solicitudes se envían al servidor. Para asegurarse de que ha asignado memoria a la caché integrada, ejecute el comando show cache parameter. En realidad, ningún objeto se almacena en caché si la memoria global es 0, por lo que debe establecerse primero.

Comandos de verificación

  • ¿Cuáles son las opciones para mostrar estadísticas de caché?

    Puede utilizar cualquiera de las siguientes opciones para mostrar las estadísticas de la caché:

    • stat cache

      Para mostrar el resumen de las estadísticas de caché.

    • stat cache –detail

      Para mostrar todos los detalles de las estadísticas de caché.

  • ¿Cuáles son las opciones para mostrar el contenido almacenado en caché?

    Para mostrar el contenido almacenado en caché, puede ejecutar el comando show cache object.

  • ¿Cuál es el comando que puedo ejecutar para mostrar las funciones de un objeto almacenado en caché?

    Si el objeto almacenado en la caché es, por ejemplo, GET //10.102.12.16:80/index.html, puede mostrar los detalles sobre el objeto ejecutando el siguiente comando desde la CLI del dispositivo:

    show cache object -url '/index.html' -host 10.102.3.96 -port 80

  • ¿Es obligatorio especificar el nombre del grupo como parámetro para mostrar los objetos parametrizados en la memoria caché?

    Sí. Es obligatorio especificar el nombre del grupo como parámetro para mostrar los objetos parametrizados en la caché. Por ejemplo, considere que ha agregado las siguientes directivas con la misma regla:

     add cache policy p2 -rule ns_url_path_cgibin -action CACHE –storeInGroup g1
     add cache policy p1 -rule ns_url_path_cgibin -action CACHE -storeInGroup g2
     <!--NeedCopy-->
    

    En este caso, para las múltiples solicitudes, si se evalúa la directiva p1, su contador de selección se incrementa y la directiva almacena el objeto en el grupo g1, que tiene parámetros de selección. Por lo tanto, debe ejecutar el siguiente comando para mostrar los objetos de la caché:

    show cache object -url "/cgi-bin/setCookie.pl" -host 10.102.18.152 groupName g1

    Del mismo modo, para otro conjunto de solicitudes múltiples, si se evalúa la directiva p2, su contador de selección se incrementa y la directiva almacena el objeto en el grupo g2, que no tiene parámetros de selección. Por lo tanto, debe ejecutar el siguiente comando para mostrar los objetos de la caché:

    show cache object -url "/cgi-bin/setCookie2.pl" -host 10.102.18.152

  • Hay algunas entradas en blanco en la salida del comando nscachemgr. ¿Cuáles son esas entradas?

    Considere el siguiente ejemplo de salida del nscachemgr comando. Las entradas en blanco de esta salida se resaltan en negrita para su referencia:

     root@ns# /netscaler/nscachemgr -a
     //10.102.3.89:80/image8.gif
     //10.102.3.97:80/staticdynamic.html
     //10.102.3.97:80/
     //10.102.3.89:80/image1.gif
     //10.102.3.89:80/file5.html
     //10.102.3.96:80/
     //10.102.3.97:80/bg_logo_segue.gif
     //10.102.3.89:80/file500.html
     //10.102.3.92:80/
     //10.102.3.96:80/cgi-bin/rfc/ccProxyReval.pl
     Total URLs in IC = 10
     <!--NeedCopy-->
    

    Las entradas en blanco en la salida se deben a las propiedades de almacenamiento en caché predeterminadas para GET/HTTP/1.1.

Lavado de objetos

  • ¿Cómo puedo vaciar un objeto selectivo de la caché?

    Puede identificar un objeto de forma única por su dirección URL completa. Para vaciar un objeto de este tipo, puede realizar cualquiera de las siguientes tareas:

    • Caché de vaciado
    • Grupo de contenido de vaciado
    • Vacar el objeto específico

    Para vaciar el objeto específico, debe especificar los parámetros de consulta. Especifique el parámetro InvalParam para vaciar el objeto. Este parámetro solo se aplica a una consulta.

  • ¿Algún cambio en la configuración de la caché activa el vaciado de la caché?

    Sí. Al cambiar a la configuración de caché, todos los comandos de caché SET vacian de forma inherente los grupos de contenido adecuados.

  • He actualizado los objetos en el servidor. ¿Necesito vaciar los objetos almacenados en caché?

    Sí. Al actualizar objetos en el servidor, debe vaciar los objetos almacenados en caché, o al menos los objetos y grupos de contenido relevantes. La memoria caché integrada no se ve afectada por una actualización del servidor. Continúa sirviendo los objetos almacenados en caché hasta que caduquen.

Caché Flash

  • ¿Qué es la función Flash Cache del dispositivo Citrix ADC?

    El fenómeno de las multitudes de Flash ocurre cuando muchos clientes acceden al mismo contenido. El resultado es un aumento repentino del tráfico hacia el servidor. La función Flash Cache permite que el dispositivo Citrix ADC mejore el rendimiento en tal situación mediante el envío de una sola solicitud al servidor. Todas las demás solicitudes se ponen en cola en el dispositivo y la respuesta única se sirve a las solicitudes. Puede utilizar cualquiera de los siguientes comandos para habilitar la función Caché rápida:

    • add cache contentGroup \<Group_Name> -flashCache YES
    • set cache contentGroup \<Group_Name> -flashCache YES
  • ¿Cuál es el límite para los clientes de Flash Cache?

    El número de clientes de Flash Cache depende de la disponibilidad de recursos en el dispositivo Citrix ADC.

Comportamiento predeterminado

  • ¿El dispositivo Citrix ADC recibe objetos de forma proactiva al caducar?

    El dispositivo Citrix ADC nunca recibe objetos de forma proactiva al caducar. Esto es cierto incluso para los objetos negativos. El primer acceso después de la expiración desencadena una solicitud al servidor.

  • ¿La caché integrada agrega clientes a la cola para servir incluso antes de que comience a recibir la respuesta?

    Sí. La caché integrada agrega clientes a la cola para servir incluso antes de que comience a recibir la respuesta.

  • ¿Cuál es el valor predeterminado para Verify cached object using parameter of the cache configuration?

    HOSTNAME_AND_IP es el valor predeterminado.

  • ¿El dispositivo Citrix ADC crea entradas de registro en los archivos de registro?

    Sí. El dispositivo Citrix ADC crea entradas de registro en los archivos de registro.

  • ¿Los objetos comprimidos se almacenan en la caché?

    Sí. Los objetos comprimidos se almacenan en la caché.

Interoperabilidad con otras funciones

  • ¿Qué sucede con los objetos almacenados actualmente en caché y a los que se accede a través de SSL VPN?

    Los objetos almacenados en la caché y a los que se accede regularmente se sirven como caché, selecciónelo cuando se accede a través de SSL VPN.

  • ¿Qué sucede con los objetos almacenados en la caché cuando se accede a través de SSL VPN y posteriormente se accede a través de una conexión regular?

    Los objetos almacenados a través del acceso SSL VPN se sirven como selección cuando se accede a través de la conexión normal.

  • Cuando uso el registro web, ¿cómo diferencio las entradas que indican la respuesta servida de la caché de las servidas por el servidor?

    Para las respuestas servidas desde la caché integrada, el campo de registro del servidor contiene el valor IC. Para las respuestas servidas desde un servidor, el campo de registro del servidor contiene el valor enviado por el servidor. A continuación se muestra una entrada de registro de ejemplo para una transacción de almacenamiento en caché integrada:

    "10.102.1.52 - "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; .NET CLR 1.0.3705)" "GET /" 200 0 "IC" 10.102.1.45"

    Junto con una solicitud de cliente, la respuesta registrada es la enviada al cliente y no necesariamente la enviada por el servidor.

Nota

Cuando se utiliza el registro web, las respuestas de la caché integrada contienen el IC de valor en el campo de registro del servidor. El campo de registro del servidor está presente en el cliente NSWL con el especificador de formato “%o1”.

Otros

  • ¿Qué significa configurar relexpiry y absexpiry?

    Al configurar relexpiry y absexpiry, significa que va a anular el encabezado independientemente de lo que aparezca en el encabezado. Puede configurar una configuración de caducidad diferente y el nivel de grupo de contenido. Con relexpiry, la caducidad del encabezado se basa en el momento en que Citrix ADC recibe el objeto. Con absexpiry, la caducidad se basa en el tiempo configurado en Citrix ADC. Relexpiry se configura en segundos. Absexpiry es una hora del día.

  • ¿Qué significa configurar weakpos y heuristic?

    La heurística weakpos y la heurística son como valores de reserva. Si hay un encabezado de caducidad, solo se considera si el encabezado modificado por última vez está presente. El dispositivo Citrix ADC establece la caducidad en función de la última cabecera modificada y el parámetro heurístico. El cálculo de caducidad heurístico determina el tiempo de caducidad mediante la comprobación del encabezado modificado por última vez. Un porcentaje de la duración desde la última modificación del objeto se utiliza como tiempo de caducidad. La heurística de un objeto que permanece sin modificar durante períodos de tiempo más largos y es probable que tenga períodos de caducidad más largos. —heurExpiryParam especifica el valor porcentual que se va a utilizar en este cálculo. De lo contrario, el dispositivo utiliza el weakpos valor.

  • ¿Qué debo considerar antes de configurar el almacenamiento en caché dinámico?

    Si hay algún parámetro que está en formato nombre-valor y no tiene la consulta URL completa, o si el dispositivo recibe el parámetro en un encabezado de cookie o en un cuerpo POST, considere la posibilidad de configurar el almacenamiento en caché dinámico. Para configurar el almacenamiento en caché dinámico, debe configurar el parámetro HitParams.

  • ¿Cómo se admite la codificación hexadecimal en los nombres de los parámetros?

    En el dispositivo Citrix ADC, la codificación %HEXHEX se admite en los nombres de los parámetros. En los nombres que especifique para HitParams o InvalParams, puede especificar un nombre que contiene la codificación %HEXHEX en los nombres. Por ejemplo, el nombre, el nombre%65 y n%61m%65 son equivalentes.

  • ¿Cuál es el proceso para seleccionar un parámetro HitParam?

    Considere el siguiente extracto de un encabezado HTTP para una solicitud POST:

     POST /data2html.asp?param1=value1&param2=&param3&param4=value4
     HTTP/1.1
     Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
     application/vnd.ms-powerpoint, application/vnd.ms-excel,
     application/msword, application/x-shockwave-flash, \*/\*
     Referer: http://10.102.3.97/forms.html
     Accept-Language: en-us
     Content-Type: application/x-www-form-urlencoded
     Accept-Encoding: gzip, deflate
     User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
     Host: 10.102.3.97
     Content-Length: 153
     Connection: Keep-Alive
     Cache-Control: no-cache
     Cookie: ASPSESSIONIDQGQGGRNY=NNLLKDADEENOAFLCCDGFGDMO
     S1=This+text+is+only+text%2C+not+more+and+not+less%2C+%0D%0Ajust+text+to+be+itself%2C+namely+%22Text%22+to+be+posted+as+text+%28what+else...%29&B1=Submit
     <!--NeedCopy-->
    

    En la solicitud anterior, puede utilizar S1 y B1, resaltados en negrita para su referencia, como HitParams dependiendo de sus necesidades. Además, si utiliza -MatchCookies YES en el grupo de contenido ASPSESSIONIDQGQGGRNY, entonces también puede usar estos parámetros como HitParams.

  • ¿Qué sucede con los clientes en cola si la respuesta no se almacena en caché?

    Si la respuesta no se puede almacenar en caché, todos los clientes de la cola reciben la misma respuesta que recibe el primer cliente.

  • ¿Puedo habilitar las funciones Poll every time (PET) y Flash Cache en el mismo grupo de contenido?

    No. No puede habilitar PET y Flash Cache en el mismo grupo de contenido. La caché integrada no realiza la función AutoPet en grupos de contenido de Flash Cache. La función PET garantiza que la caché integrada no sirve a un objeto almacenado sin consultar al servidor. Puede configurar PET explícitamente para un grupo de contenido.

  • ¿Cuándo se crean las entradas de registro para los clientes en cola?

    Las entradas de registro se crean para los clientes en cola poco después de que el dispositivo reciba el encabezado de respuesta. Las entradas de registro se crean solo si el encabezado de respuesta no hace que el objeto no se pueda almacenar en caché.

  • ¿Cuál es el significado de los valores DNS, HOSTNAME y HOSTNAME_AND_IP de Verify cached object using parameter of the cache configuration?

    Los significados son los siguientes:

    • set cache parameter -verifyUsing HOSTNAME

      El comando ignora la dirección IP de destino.

    • set cache parameter -verifyUsing HOSTNAME_AND_IP

      El comando coincide con la dirección IP de destino.

    • set cache parameter -verifyUsing DNS

      El comando utiliza el servidor DNS.

  • He establecido WeakNegreLexpiry en 600, que son 10 minutos. Noté que las respuestas 404 no se están almacenando en caché. ¿Cuál es la razón?

    Esto depende completamente de su configuración. De forma predeterminada, 404 respuestas se almacenan en caché durante 10 minutos. Si quiere que todas las respuestas 404 se obtenan del servidor, especifique: weaknegrelExpiry 0. Puede ajustar el —weaknegrelExpiry a un valor deseado, como superior o inferior para obtener las 404 respuestas almacenadas en caché adecuadamente. Si ha configurado —AbsExpiry para respuestas positivas, entonces es posible que no produzca los resultados deseados.

  • Cuando el usuario accede al sitio mediante el explorador Mozilla Firefox, se muestra el contenido actualizado. Sin embargo, cuando el usuario accede al sitio mediante el explorador Microsoft Internet Explorer, se muestra contenido obsoleto. ¿Cuál podría ser la razón?

    Es posible que el explorador Microsoft Internet Explorer esté tomando el contenido de su caché local en lugar de la caché integrada de Citrix ADC. La razón puede ser que el explorador Microsoft Internet Explorer no respeta el encabezado relacionado con la caducidad en la respuesta.

    Para resolver este problema, puede inhabilitar la caché local de Internet Explorer y borrar el contenido sin conexión. Después de borrar el contenido sin conexión, el explorador debe mostrar el contenido actualizado.

  • ¿Qué pasa si los hits son cero?

    Compruebe si la hora del servidor y la hora NS están sincronizadas. Y el límite de WeakPosrelExpiry debe soportar la diferencia horaria entre NS y servidor de la siguiente manera:

     root@ns180# date
     Tue May 15 18:53:52 IST 2012
     <!--NeedCopy-->
    
  • ¿Por qué las directivas reciben visitas pero no se está almacenando en caché?

    Compruebe que la memoria esté asignada a la caché integrada y que la asignación sea mayor que cero.

  • ¿Es posible poner a cero los contadores de caché?

    No hay línea de comandos ni opción GUI para establecer los contadores de caché en cero, y el vaciado de la caché tampoco lo hace. Reiniciar el cuadro establece automáticamente estos contadores en cero.

Almacenamiento en caché integrado