For distributed platformsFor z/OS platforms[17.0.0.1 and later]

Reglas de direccionamiento para el direccionamiento dinámico de Liberty

Puede utilizar reglas de direccionamiento en el direccionamiento dinámico de Liberty para personalizar exactamente los servidores que se utilizarán para manejar solicitudes específicas.

De forma predeterminada, el direccionamiento dinámico equilibra las solicitudes de carga entre todos los servidores que pueden manejar la solicitud. Para alterar temporalmente el comportamiento predeterminado, debe configurar las reglas de direccionamiento. Las reglas de direccionamiento pueden direccionar solicitudes a recursos de servidor específicos, redireccionar solicitudes o rechazar solicitudes.

  1. Si despliega la misma aplicación en dos clústeres distintos, puede utilizar las reglas de direccionamiento para direccionar solicitudes de un conjunto determinado de direcciones IP de cliente a uno de los clústeres y el resto de las solicitudes al otro clúster.
  2. Si despliega la misma aplicación en varios colectivos, puede utilizar reglas de direccionamiento para enviar las solicitudes sólo al primer colectivo, a menos que no haya servidores disponibles en el primer colectivo, y a continuación enviar solicitudes a servidores en el segundo colectivo.
Importante: Cuando se direcciona a varios colectivos, las reglas de direccionamiento se leen sólo de uno de los colectivos. Intelligent Management para servidores web lee las reglas de direccionamiento sólo del colectivo especificado por la propiedad RoutingRulesConnectorClusterName de la stanza <IntelligentManagement> en el archivo plugin-cfg.xml. El valor de la propiedad RoutingRulesConnectorClusterName se inicializa con el nombre del primer colectivo especificado por la opción ‑‑collectives del mandato dynamicRouting que ha creado el archivo plugin-cfg.xml. Añada las reglas de direccionamiento a los controladores colectivos en el colectivo especificado por la propiedad RoutingRulesConnectorClusterName de la stanza <IntelligentManagement> del archivo plugin-cfg.xml.

Expresión de correlación y acciones

Las reglas de direccionamiento proporcionan una expresión de correlación y una acción. La expresión de correlación se aplica a cada una de las solicitudes. Cuando una solicitud coincide con la expresión de correlación, se realiza la acción especificada por la regla para esa solicitud. Las expresiones de correlación examinan diversas propiedades de la solicitud como por ejemplo el URI, las cabeceras, las cookies, los parámetros y las direcciones IP de cliente. La acción que se realiza es rechazar, redireccionar o permitir la solicitud.

Cada una de las reglas de direccionamiento tiene un número de orden asignado. Las reglas se evalúan según el número de orden, de menor a mayor. La primera regla que coincide con una solicitud determina cómo se manejará la solicitud. Si no hay ninguna regla coincidente, la solicitud se equilibra entre todos los servidores disponibles que manejan la solicitud.

Si el tipo de acción de una regla es rechazar la solicitud, se especifica el código de retorno HTTP aplicable. El código de rechazo debe ser uno de los códigos de rechazo a los que da soporte el servidor web.

Si el tipo de acción de una regla es redirigir la solicitud, se especifica la ubicación de redirección.

Si el tipo de acción de una regla es permitir la solicitud, se especifican los destinos donde se puede enviar la solicitud. Cuando se realiza equilibrio de carga de la solicitud, los destinos especifican el conjunto de todos los servidores a elegir. En el conjunto de destinos, solo se utilizan los servidores que pueden manejar mejor la solicitud. También se pueden especificar los destinos de migración tras error. Los servidores de un destino de migración tras error solo se utilizan si no hay disponible ninguno de los servidores de un destino primario. Los destinos se pueden especificar como clústeres o servidores.

De forma predeterminada, cuando una solicitud tiene afinidad de sesión, la selección de servidor se basa en la afinidad. Si se encuentra una afinidad de sesión, las reglas de direccionamiento no se utilizan. Para habilitar las reglas de direccionamiento para alterar temporalmente la selección de afinidad, se puede añadir el atributo overrideAffinity al elemento <routingRules> del archivo server.xml. Consulte Configuración de reglas de direccionamiento para el direccionamiento dinámico de Liberty.

Destino de clúster

Un destino de clúster se especifica con un nombre de colectivo y un nombre de clúster. Cualquiera de las dos partes del destino de clúster puede utilizar caracteres comodín (*). Por ejemplo, si se especifica un destino de clúster como cluster=collective1,*, se pueden utilizar servidores de cualquier clúster en collective1. Si se especifica un destino de clúster como cluster=*,cluster1, se pueden utilizar los servidores en cluster1 en cualquier colectivo.

Destino de servidor

Un destino de servidor se especifica con un nombre de colectivo, un nombre de host, un directorio de usuario y un nombre de servidor. Todas las partes del destino de servidor pueden utilizar caracteres comodín. Por ejemplo, si se especifica un destino de servidor como server=collective1,*,*,*, se puede utilizar cualquier servidor en collective1. Si se especifica un destino de servidor como server=*,*,*,server1, se puede utilizar server1 en cualquier colectivo.

Evaluación de reglas de direccionamiento

Antes de aplicar reglas de direccionamiento, Intelligent Management para servidores web determina el mejor conjunto de destinos para dar servicio a una solicitud. El mejor conjunto de destinos está formado por los servidores con aplicaciones web cuyo host virtual, raíz de contexto y correlaciones de servlets se ajustan mejor a la solicitud. Las reglas de direccionamiento pueden restringir los destinos que se utilizan para el direccionamiento a un subconjunto de todo el conjunto de mejores destinos. Las reglas de direccionamiento no pueden hacer que se elija un destino que esté fuera del conjunto original de mejores destinos.

Por ejemplo, supongamos que existan las condiciones siguientes:

  • ApplicationA tiene la raíz de contexto /A/* y está instalada en clusterA.
  • ApplicationAB tiene la raíz de contexto /A/B/* y está instalada en clusterAB.

En estas condiciones, las reglas de direccionamiento evalúan las solicitudes de la forma siguiente:

  • Ambas aplicaciones dan servicio a la solicitud /A/B/myservlet. Sin embargo, dado que la raíz de contexto /A/B/* es una mejor coincidencia para /A/B/myservlet que la raíz de contexto /A/*, las solicitudes de /A/B/myservlet se direccionan siempre a clusterAB.
  • Se puede utilizar una regla de direccionamiento que coincida con una solicitud de /A/B/myservlet para restringir los destinos a un subconjunto de los servidores en clusterAB, pero no se puede utilizar para seleccionar servidores en clusterA, que nunca se elige como coincidencia para esta solicitud.

Icono que indica el tipo de tema Tema de concepto

Nombre de archivo: cwlp_wve_routing_rules.html