domingo, 10 de diciembre de 2017

Dividir el trafico en App Engine

Para usar en lanzamiento de nueva versión o para fines de prueba A / B

Cuando llegue el momento de lanzar una nueva función, puede probarla en vivo, en producción, con una pequeña fracción de su audiencia, para ver cómo reaccionarán los usuarios, si la adoptan o si tienen problemas con estas funciones. . Esta es la prueba A / B: una fracción de los clientes ven su aplicación en cierto estado (con su nueva característica), mientras que el resto de los usuarios ven la aplicación como solían verla.  (sin la función).

Otra situación es cuando una nueva característica puede tener un impacto en el rendimiento, en el consumo de algunos recursos, y desea hacer un despliegue progresivo para hacer frente a ese impacto. De nuevo, en este caso, es posible que desee realizar un lanzamiento de su aplicación de manera fragmentada, enviando usuarios a una u otra versión de su aplicación.

Cuando desarrollas e implementas aplicaciones para Google App Engine, como Snapchat o Angry Birds, puede aprovechar la "división del tráfico" para realizar las pruebas A / B o el despliegue progresivo. Puede decidir dividir su tráfico de usuario en varias versiones de su aplicación al mismo tiempo, a través de una lógica de división basada en direcciones IP, a través de cookies, o aleatoriamente.

División del tráfico a través de la consola

Desde la consola, en la sección de App Engine, vaya al elemento de menú "Versiones", haga clic en el botón "Dividir tráfico" (con la flecha dividida). Luego puede seleccionar las versiones de su aplicación para dividir el tráfico, así como el modo de división (dirección IP, Cookie o Aleatorio) y definir el porcentaje de tráfico que debe recibir cada versión.


Division del trafico con comando gcloud CLI

En el CLI de gcloud se puede hacer con el siguiente sub-comando:

gcloud app services set-traffic [MY_SERVICE] \
    --splits [MY_VERSION1]=[VERSION1_WEIGHT],[MY_VERSION2]=[VERSION2_WEIGHT] \
    --split-by [IP_OR_COOKIE]

Por ejemplo:

gcloud app services set-traffic \
    --splits 3=.1,2=.9 \
    --split-by cookie

Mas información:

 Tienes mas información sobre gestión del trafico y los detalles y parametros de comando gcloud