Los proyectos de software basados en la nube deben emplear varios entornos. Esos entornos suelen tener nombres como dev
, qa
, staging
y prod
.
Es fundamental que cada uno de ellos esté completamente aislado de los otros. Por lo general, los entornos tienen permisos de acceso del operador muy diferentes.
Por ejemplo, puede suceder que el equipo de desarrollo tenga acceso total al entorno dev
environment, pero acceso limitado al entorno prod
, y que toda la implementación del código se lleve a cabo exclusivamente mediante secuencias de comandos automatizadas. Además, es esencial que los datos de los distintos entornos permanezcan aislados.
El uso de varios proyectos de Google Cloud se adapta a estos requisitos a la perfección, ya que los proyectos proporcionan un aislamiento completo del código y los datos, y los permisos del operador se pueden administrar por separado. Debido a que App Engine escala de forma automática sus instancias de entrega, solo pagas por lo que utilizas. Por ejemplo, si tu entorno de etapa de pruebas solo se necesita una de cada cuatro semanas, no pagarás ningún costo de instancias de entrega por las otras tres. Sin embargo, ten en cuenta que se te aplicarán cargos por los datos almacenados en estos proyectos.
Asigna el nombre de los entornos
Si decides crear tu aplicación de microservicios mediante el uso de varios servicios, puedes crear un único proyecto de Google Cloud para cada uno de los entornos y asignarles un nombre correspondiente, como web-app-dev
, web-app-qa
y web-app-prod
.
De lo contrario, si decides crear tu aplicación de microservicios mediante el uso de varios proyectos, puedes lograr la misma separación entre los entornos, pero necesitarás usar más proyectos, comoweb-app-dev
, web-app-prod
, user-service-dev
y user-service-prod
.
Deberás usar patrones de código para asegurarte de que los proyectos dev
solo llamen a otros proyectos dev
y los proyectos prod
solo llamen a los proyectos prod
.
¿Qué sigue?
- Accede a una descripción general de la arquitectura de microservicios en App Engine.
- Conoce las recomendaciones para diseñar API que posibiliten la comunicación entre microservicios.
- Conoce las recomendaciones relativas al rendimiento de los microservicios.
- Aprende a migrar una aplicación monolítica existente a una con microservicios.