Todos los productos
Search
Centro de documentos

Server Load Balancer:Configure path-based forwarding rules

Última actualización: Sep 03, 2026

De forma predeterminada, una instancia de Classic Load Balancer (CLB) envía todo el tráfico al grupo de servidores backend configurado para el listener. A medida que sus servicios crecen, esto puede provocar una distribución desigual de recursos, degradación del rendimiento y mayor complejidad operativa. Al configurar reglas de reenvío en un listener de CLB, puede dirigir el tráfico a grupos de servidores backend específicos. Esto permite una gestión detallada del tráfico y el aislamiento de servicios para mejorar la utilización de recursos, garantizar la estabilidad del servicio y optimizar la experiencia del usuario.

Descripción general de la función

Las reglas de reenvío de un listener de CLB distribuyen las solicitudes entrantes de los clientes a diferentes servidores backend según los nombres de dominio y las rutas URL.

Funciones principales

  • Reenvío basado en nombre de dominio

    • Modo de coincidencia: Admite coincidencia exacta y coincidencia con comodines (incluidos comodines de nivel único y multinivel). Por ejemplo, www.aliyun.com es una coincidencia exacta, mientras que *.aliyun.com y *.market.aliyun.com son coincidencias con comodines.

    • Prioridad de coincidencia: El orden de coincidencia es Coincidencia Exacta > Comodín Más Específico > Comodín Más Amplio, lo que garantiza que las reglas más precisas se ejecuten primero.

      La siguiente tabla muestra ejemplos de prioridad de coincidencia. Una ✓ indica coincidencia y una × indica que no hay coincidencia.

      Modo

      URL de solicitud de prueba

      Regla de reenvío de dominio

      www.aliyun.com

      *.aliyun.com

      *.market.aliyun.com

      Exact Match

      www.aliyun.com

      ✓

      ×

      ×

      Coincidencia con comodines

      market.aliyun.com

      ×

      ✓

      ×

      info.market.aliyun.com

      ×

      ×

      ✓

  • Reenvío basado en ruta URL

    Lógica de coincidencia: El sistema utiliza la coincidencia de prefijo más largo basada en la ruta URL. Por ejemplo, si configura reglas tanto para /abc como para /abcd, una solicitud para /abcde coincide con la regla /abcd.

  • Combinaciones de políticas: Puede configurar varias políticas bajo el mismo listener y usar una combinación de nombres de dominio y rutas URL para implementar escenarios complejos de distribución de tráfico, como dirigir solicitudes de lectura y escritura a diferentes grupos de servidores.

Funcionamiento

Puede agregar varias reglas de reenvío a un solo listener, donde cada regla se asocia con un grupo vServer diferente. La lógica de coincidencia se muestra en la siguiente figura. Si no ha configurado ninguna regla de reenvío, el load balancer reenvía todas las solicitudes al grupo de servidores predeterminado configurado para el listener. Cuando se configuran reglas de reenvío, el load balancer intenta coincidir con una regla. Si una solicitud coincide con una regla, se reenvía al grupo de servidores asociado a dicha regla. De lo contrario, la solicitud se envía al grupo de servidores predeterminado del listener.

image

Escenarios de uso

  • Arquitectura de microservices: En una arquitectura de microservices, una aplicación consta de varios servicios independientes desplegados en diferentes instancias o contenedores. El enrutamiento basado en rutas dirige las solicitudes de los clientes a la instancia de servicio específica que maneja la lógica de negocio correspondiente. Por ejemplo, en una plataforma de comercio electrónico, la autenticación de usuarios, el procesamiento de pedidos y las solicitudes de pago pueden enrutarse a los respectivos servicios de autenticación, pedidos y pagos según la ruta URL en la solicitud HTTP.

  • Separación de lectura/escritura: Para servicios con alta concurrencia y requisitos estrictos de consistencia de datos, como el procesamiento de pedidos, puede implementar la separación de lectura/escritura para optimizar el rendimiento y la seguridad de los datos. Las operaciones de lectura y escritura son manejadas por diferentes instancias o clústeres de base de datos. Las operaciones de lectura se enrutan a una base de datos de lectura, mientras que las operaciones de escritura se dirigen a la base de datos de escritura.

  • Aplicaciones multiinquilino: En aplicaciones multiinquilino, se requieren entornos independientes para proporcionar aislamiento de servicios y personalización para diferentes inquilinos. Por ejemplo, puede usar subdominios específicos por inquilino para distinguir diferentes puntos de entrada y usar rutas URL para refinar aún más las funciones del servicio. Este enfoque no solo garantiza la seguridad y privacidad de los datos para cada inquilino, sino que también permite experiencias e interfaces de usuario personalizadas.

Límites

  • Solo los listeners HTTP y HTTPS de capa 7 admiten reglas de reenvío.

  • Los grupos de servidores backend especificados en las reglas de reenvío deben ser grupos vServer.

  • Puede agregar hasta 40 reglas de reenvío de nombre de dominio y URL a un listener HTTP o HTTPS. Para obtener más información, consulte Limits.

Escenario de ejemplo

Una plataforma educativa desea ofrecer una variedad de servicios de aprendizaje en línea, incluidos cursos en video y una biblioteca de exámenes en línea, a través de un solo nombre de dominio. El servicio de video requiere un alto ancho de banda y capacidades de streaming, mientras que el servicio de biblioteca de exámenes requiere computación intensiva y tiempos de respuesta rápidos. Inicialmente, todos los servicios se desplegaron en un solo grupo de servidores, lo que provocó una asignación desigual de recursos. Durante las horas pico de streaming de video, el rendimiento de la biblioteca de exámenes se vio afectado, lo que degradó la experiencia del usuario. La alta carga del servidor durante los picos de tráfico también comprometió la estabilidad del servicio.

Para solucionar esto, la plataforma utiliza reglas de reenvío de Alibaba Cloud CLB para enrutar el tráfico según diferentes rutas URL bajo el mismo nombre de dominio. Como se muestra en la siguiente figura, las solicitudes a /video/ se reenvían al grupo vServer de servicio de video RS1, lo que garantiza suficiente ancho de banda y potencia de procesamiento para el servicio de video. Las solicitudes a /exam/ se reenvían al grupo vServer de servicio de exámenes RS2, optimizando los recursos de computación para respuestas rápidas a consultas y envíos. Este enfoque logra un enrutamiento preciso y garantiza que cada subservicio funcione de manera independiente.

image

Requisitos previos

  • Ha creado created a Virtual Private Cloud (VPC) named VPC1 en la región China (Shanghai) y ha creado dos vSwitches, VSW1 y VSW2, en la Zona E y la Zona G, respectivamente.

  • Ha creado instancias ECS ECS01 y ECS02 en VSW1 y VSW2, respectivamente, y ha desplegado un servicio de aplicación en cada una. Nota: Asegúrese de que las reglas del security group permitan el tráfico en los puertos utilizados por los servicios de aplicación.

    Los siguientes comandos de ejemplo muestran cómo desplegar las aplicaciones de prueba en ECS01 y ECS02:

    Comandos de ejemplo para desplegar servicios de prueba en las instancias ECS

    Comandos para ECS01

    yum install -y nginx
    systemctl start nginx.service
    mkdir /usr/share/nginx/html/video
    cd /usr/share/nginx/html/video
    echo "Hello World ! This is video service." > index.html

    Comandos para ECS02

    yum install -y nginx
    systemctl start nginx.service
    mkdir /usr/share/nginx/html/exam
    cd /usr/share/nginx/html/exam
    echo "Hello World ! This is exam service." > index.html
  • Ha creado created two vServer groups, RS1 and RS2 para su instancia CLB y ha agregado ECS01 a RS1 y ECS02 a RS2. El puerto del servidor backend debe coincidir con el puerto del servicio de aplicación. Este ejemplo utiliza el puerto predeterminado de NGINX 80.

  • Ha configurado un HTTP listener o un HTTPS listener para su instancia CLB.

  • Ha completado registered a domain name with Alibaba Cloud y ha finalizado ICP filing.

Procedimiento

Paso 1: Configurar reglas de reenvío

  1. Inicie sesión en la consola de Classic Load Balancer (CLB).

  2. En la barra de navegación superior, seleccione la región donde está desplegada su instancia CLB.

  3. En la página Instances, haga clic en el ID de la instancia objetivo.

  4. En la pestaña Listener, busque el listener objetivo y haga clic en Set Forwarding Rule en la columna Actions.

  5. En el panel Add Forwarding Policy, configure la regla de reenvío y haga clic en Add Forwarding Policy.

    En este ejemplo, se configuran dos reglas de reenvío: las solicitudes con la URL /video se reenvían al grupo vServer RS1, y las solicitudes con la URL /exam se reenvían al grupo vServer RS2.

    • Domain Name: Introduzca su nombre de dominio registrado, el cual debe tener un registro ICP completo.

    • URL: Introduzca la ruta de la solicitud.

      La coincidencia de rutas para las reglas de reenvío de CLB distingue entre mayúsculas y minúsculas. Por ejemplo, /video y /viDeo se consideran dos rutas separadas y requieren diferentes reglas de reenvío.

    Nota

    Si la ruta URL de la solicitud contiene caracteres especiales, debe usar codificación URL. Por ejemplo, si se configura una regla de reenvío para una ruta URL que contiene un signo de número (#), como /#/, la URL de la solicitud debe usar el valor codificado en URL "%23" (por ejemplo, /%23/) para que coincida correctamente y se reenvíe.

Paso 2: Configurar comprobaciones de estado

Nota

De forma predeterminada, una comprobación de estado HTTP envía una solicitud HTTP a la página principal predeterminada de la aplicación configurada en el servidor. Para usar una página distinta a la página principal predeterminada para la comprobación de estado, especifique su ruta exacta.

  1. En la página Instances, busque la instancia CLB objetivo y haga clic en su ID.

  2. En la pestaña Listener, busque el listener y haga clic en Set Forwarding Rule en la columna Actions.

  3. En el panel Add Forwarding Rules, bajo Forwarding Rules, busque la regla de reenvío objetivo y haga clic en Modify. Repita este paso para cualquier otra regla que necesite configurarse.

  4. En el panel Modify Forwarding Rule, habilite Advanced Setting y establezca la Health Check Path en la ruta URL de la regla de reenvío. Por ejemplo, para la regla que usa la URL /video, establecería la ruta de comprobación de estado en /video.

    Habilite el interruptor Health Check y haga clic en OK.

Paso 3: Configurar un registro DNS

Nota
  • Para dominios no registrados en Alibaba Cloud, primero debe add the domain to the Alibaba Cloud DNS console antes de poder configurar registros DNS.

  • Si su instancia CLB es una instancia orientada a la red interna, primero debe asociarle una dirección IP elástica (EIP) y luego crear un registro A que asigne el nombre de dominio a la EIP para habilitar el acceso público.

  1. En el panel de navegación izquierdo, elija CLB > Instances.

  2. En la página Instances, seleccione la instancia objetivo y copie su IP Address.

  3. Realice los siguientes pasos para agregar un registro A:

    1. Inicie sesión en la consola de Alibaba Cloud DNS.

    2. En la página Public Zone, busque el nombre de dominio objetivo y haga clic en Settings en la columna Actions.

    3. En la página Settings, haga clic en Add Record.

    4. En el panel Add Record, configure los siguientes parámetros. Puede dejar otros parámetros con sus valores predeterminados o modificarlos según sea necesario. Luego, haga clic en OK.

      Parámetro

      Descripción

      Record Type

      Seleccione A en la lista desplegable.

      Hostname

      El prefijo de su nombre de dominio.

      Nota

      Para un dominio raíz, establezca el nombre de host en @.

      Record Value

      Introduzca la dirección IP copiada de la instancia CLB.

Paso 4: Probar la configuración

Use un navegador para acceder a http://<your domain name>/<URL>/ y compruebe que las solicitudes se enrutan a los grupos de servidores correctos.

  1. Acceda al servicio de video en http://www.example.com/video/ para verificar que la solicitud se enruta al grupo vServer de servicio de video RS1.

    Si el acceso es correcto, la página devuelve el siguiente contenido:

    Hello World ! This is video service.
  2. Acceda al servicio de exámenes en http://www.example.com/exam/ para verificar que la solicitud se enruta al grupo vServer de servicio de exámenes RS2.

    Si la página devuelve la siguiente respuesta, la solicitud se ha enrutado correctamente al servicio de exámenes:

    Hello World ! This is exam service.

Preguntas frecuentes

¿Las reglas de reenvío de CLB admiten redirección de URL?

No. Las reglas de reenvío de CLB solo reenvían tráfico. Si necesita configurar redirección de URL, considere usar Application Load Balancer (ALB). Para obtener más información, consulte Configure forwarding rules for a listener.

¿Por qué fallan mis comprobaciones de estado después de configurar el reenvío basado en ruta?

Al realizar una comprobación de estado, el load balancer ignora las reglas de reenvío y envía solicitudes a la ruta de comprobación de estado configurada en el listener (la ruta raíz de forma predeterminada). Si sus servicios backend responden de manera diferente según la ruta de la solicitud, las comprobaciones de estado enviadas a la ruta predeterminada o a una ruta que no coincide pueden fallar. Puede configurar una ruta de comprobación de estado personalizada para cada regla de reenvío según sea necesario.

¿Hay cargos adicionales por usar reglas de reenvío basadas en dominio?

Configurar reglas de reenvío basadas en dominio no genera cargos. Sin embargo, si asocia una EIP con una instancia CLB orientada a la red interna para exponerla a Internet, se le cobrará por el uso de la red pública. Para obtener más información sobre facturación, consulte CLB billing overview.

¿Las reglas de reenvío se configuran por listener?

Sí. Las reglas de reenvío para cada listener son independientes y deben configurarse por separado.

¿Por qué sigo pudiendo acceder a los servicios backend a través de la dirección IP pública cuando el grupo de servidores al que el listener reenvía de forma predeterminada está vacío?

Cuando una ruta URL de solicitud coincide con una regla de reenvío, el load balancer enruta la solicitud directamente al grupo vServer asociado con esa regla. El grupo de servidores al que el listener reenvía de forma predeterminada no participa. Incluso cuando ese grupo de servidores no tiene servidores backend, las solicitudes que coinciden con una regla de reenvío se reenvían normalmente al grupo vServer correspondiente. Solo las solicitudes que no coinciden con ninguna regla de reenvío dependen de ese grupo de servidores. Si está vacío, esas solicitudes sin coincidencia devuelven un error 503.

Las reglas de reenvío de CLB coinciden con las solicitudes por ruta URL independientemente de si la solicitud usa un nombre de dominio o la dirección IP pública del CLB. Acceder a la dirección IP pública del CLB con una ruta URL que coincida con una regla de reenvío alcanzará correctamente el grupo vServer asociado.

Solo los listeners HTTP y HTTPS admiten reglas de reenvío basadas en ruta. Los listeners TCP y UDP no las admiten y enrutan todas las solicitudes al grupo de servidores al que el listener reenvía de forma predeterminada, por lo que el comportamiento anterior no aplica.

¿Cómo configuro reglas de reenvío para permitir el acceso solo a una URL específica y devolver 404 para las demás?

Configure reglas de reenvío separadas para las rutas URL que desea permitir y aquellas que deben devolver 404. Dado que el reenvío basado en ruta URL utiliza coincidencia de prefijo más largo, si dos rutas tienen una relación de prefijo (como /h5/ y /h5/entryPage/), configure una regla separada para la ruta más específica. Por ejemplo, para permitir solo /h5/ y devolver 404 para /h5/entryPage/:

  • URL /h5/ → el grupo vServer de su servicio empresarial.

  • URL /h5/entryPage/ → un grupo vServer dedicado a devolver 404 (como un servicio ligero de Nginx).

Las solicitudes a /h5/entryPage/ coincidirán entonces con la Regla 2 y devolverán 404, mientras que otras solicitudes bajo /h5/ coincidirán con la Regla 1 y se reenviarán normalmente.

Documentos relacionados