Enrutar tráfico en App Service

Completado

De forma predeterminada, todas las solicitudes de cliente a la dirección URL de producción de la aplicación (http://<app_name>.azurewebsites.net) se enrutan a la ranura de producción. Puede enrutar una parte del tráfico a otra ranura. Esta característica es útil si necesita comentarios del usuario para una nueva actualización, pero no está listo para publicarla en producción.

Enrutamiento automático del tráfico de producción

Para enrutar el tráfico de producción automáticamente:

  1. Vaya a la página de recursos de la aplicación y seleccione Espacios de implementación.

  2. En la columna de tráfico % de la ranura a la que desea enrutar, especifique un porcentaje (entre 0 y 100) para representar la cantidad de tráfico total que desea enrutar. Seleccione Guardar.

Una vez guardada la configuración, el porcentaje especificado de clientes se enruta aleatoriamente a la ranura que no es de producción.

Una vez que un cliente se enruta automáticamente a una ranura específica, se "ancla" a esa ranura durante la vida útil de esa sesión de cliente. En el explorador cliente, puede ver a qué ranura está anclada la sesión examinando la cookie de x-ms-routing-name en los encabezados HTTP. Una solicitud que se enruta a la ranura de "ensayo" tiene la cookie x-ms-routing-name=staging. Una solicitud que se enruta al espacio de producción tiene la cookie x-ms-routing-name=self.

Dirija manualmente el tráfico de producción

Además del enrutamiento automático del tráfico, App Service puede enrutar las solicitudes a una ranura específica. Esto resulta útil cuando quieres que los usuarios puedan participar o no participar en la aplicación beta. Para enrutar el tráfico de producción manualmente, use el parámetro de consulta x-ms-routing-name.

Para permitir que los usuarios no participen en la aplicación beta, por ejemplo, puede colocar este vínculo en la página web:

<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>

La cadena x-ms-routing-name=self especifica el espacio de producción. Después de que el explorador cliente acceda al vínculo, se le redirigirá a la ranura de producción. Cada solicitud posterior tiene la cookie x-ms-routing-name=self que ancla la sesión a la ranura de producción.

Para permitir que los usuarios participen en la aplicación beta, establezca el mismo parámetro de consulta en el nombre de la ranura que no es de producción. Este es un ejemplo:

<webappname>.azurewebsites.net/?x-ms-routing-name=staging

De forma predeterminada, a las nuevas ranuras se les asigna una regla de enrutamiento de 0%, se muestra un valor predeterminado en gris. Al establecer explícitamente el valor de la regla de enrutamiento en 0% se muestra en negro, los usuarios pueden acceder manualmente al espacio de ensayo mediante el parámetro de consulta x-ms-routing-name. Pero no se dirigirán automáticamente al slot porque el porcentaje de enrutamiento está establecido en 0. Se trata de un escenario avanzado en el que puede "ocultar" el espacio de ensayo del público, al tiempo que permite que los equipos internos prueben los cambios en la ranura.