Servicios en Cloud Run
Todo corre en Cloud Run, región us-central1.
Nexo — producción (aprendix-prod)
| Servicio | Qué es | Memoria |
|---|---|---|
nexo-hub-frontend | El portal. Sirve nexo.ucic.pe. | 512 Mi |
nexo-hub-backend | Identidad. Sirve nx-api.ucic.pe. | 512 Mi |
nexo-ti-frontend | El módulo de TI. | 512 Mi |
nexo-ti-backend | El API del módulo de TI. | 1 Gi |
nexo-ia | Motor de voz. Único que exige autenticación. | 1 Gi |
El par frontend / backend por módulo no es decorativo: solo el portal tiene dominio propio. Los módulos se alcanzan por la URL que da Google, y es suficiente porque quien los llama es el navegador, que ya sabe la dirección porque se la dio el portal.
Aprendix — producción (mismo proyecto)
apx-web apx-web-preprod
apx-api-admin apx-api-admin-preprod
apx-api-learning apx-api-learning-preprod
apx-api-reports apx-api-reports-preprod
Ocho servicios, con su propio preproducción dentro del mismo proyecto de producción. Es distinto del criterio de Nexo, que separa ambientes por proyecto.
Pruebas (aprendix-test)
ti-api ti-web ucic-ia
En producción los servicios se renombraron a nexo-* el 5 de noviembre de 2026.
En aprendix-test siguen con los nombres viejos, y no existe un portal de
pruebas.
O sea que hoy no hay dónde probar el portal antes de producción. Mientras siga así, cada cambio del portal se valida directamente en vivo.
Escalado y costo
Ningún servicio fija min-instances, así que todos bajan a cero cuando
nadie los usa: sin tráfico no se paga. El CPU está en el modo por defecto, que
solo cobra mientras se atiende una petición.
El precio de eso es el arranque en frío: la primera visita tras un rato de silencio tarda unos segundos, porque Laravel sobre FrankenPHP arranca de cero. Con el tráfico actual es claramente el trato correcto.
En Cloud Run, el check verde significa «el servicio está listo para recibir tráfico», no «hay una instancia corriendo cobrando». Un servicio a cero se ve exactamente igual que uno con diez instancias.
Cómo comprobar esto
gcloud run services list --project aprendix-prod --region us-central1
# Instancias realmente vivas, por la API de monitoreo:
# metric.type="run.googleapis.com/container/instance_count"