Los proyectos de software basados en la nube deben usar varios entornos. Estos entornos suelen tener nombres como dev
, qa
, staging
y prod
.
Es fundamental que estos entornos estén completamente aislados entre sí y, por lo general, tienen permisos de acceso de operador muy diferentes.
Por ejemplo, el equipo de desarrollo puede tener acceso completo al entorno dev
, pero solo acceso limitado al entorno prod
, y todas las
implementaciones de código se realizan únicamente mediante secuencias de comandos automatizadas. Además, es absolutamente esencial que los datos de los diferentes entornos permanezcan aislados.
Usar varios Google Cloud proyectos se adapta perfectamente a estos requisitos, ya que los proyectos proporcionan un aislamiento completo del código y los datos, y los permisos de los operadores se pueden gestionar por separado. Como App Engine escala automáticamente sus instancias de servicio, solo pagas por lo que usas. Por ejemplo, si tu entorno de staging solo es necesario una semana de cada cuatro, no pagarás ningún coste de instancia de servicio durante las otras tres. Sin embargo, ten en cuenta que se te facturarán los datos almacenados en estos proyectos.
Asignar nombres a entornos
Si decides crear tu aplicación de microservicios usando solo varios servicios, puedes crear un solo proyecto de Google Cloud para cada uno de tus entornos y nombrarlos en consecuencia, como web-app-dev
, web-app-qa
y web-app-prod
.
Si prefieres crear tu aplicación de microservicios usando varios proyectos, puedes conseguir la misma separación entre entornos, pero tendrás que usar más proyectos, como web-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 de que los proyectos prod
solo llamen a otros proyectos prod
.
Siguientes pasos
- Consulta una descripción general de la arquitectura de microservicios en App Engine.
- Consulta las prácticas recomendadas para diseñar APIs que permitan la comunicación entre microservicios.
- Consulta las prácticas recomendadas para mejorar el rendimiento de los microservicios.
- Consulta cómo migrar una aplicación monolítica a una con microservicios.