Aplicaciones en la Nube

¿Qué son las Aplicaciones en la Nube?

Las aplicaciones en la nube (o cloud-native apps) son software diseñado específicamente para ejecutarse en entornos de computación en la nube, aprovechando su escalabilidad, resiliencia y flexibilidad. A diferencia de las aplicaciones tradicionales, estas:

  • Se ejecutan en infraestructura distribuida (AWS, Azure, GCP)
  • Usan servicios administrados (bases de datos, autenticación, IA)
  • Siguen principios de elasticidad (escalan automáticamente según demanda)

Características Clave:

  • Escalabilidad bajo demanda (vertical/horizontal)
  • Tolerancia a fallos (réplicas multi-región)
  • Pago por uso (modelo operativo OPEX)
  • Actualizaciones continuas (sin downtime)
Tipo Descripción Ejemplos
SaaS (Software as a Service) Apps listas para usar via navegador Gmail, Slack, Zoom
PaaS (Platform as a Service) Entornos para desarrollar apps Heroku, AWS Elastic Beanstalk
IaaS (Infrastructure as a Service) Infraestructura virtualizada AWS EC2, Azure VMs

Arquitecturas Comunes

  1. Monolíticas en la Nube
    • Ventaja:
    • Sencillez para migrar aplicaciones legacy
    • Desafío:
    • Escalabilidad limitada
    • Uso típico:
    • ERPs, sistemas internos
    Monolíticas
  2. Microservicios
    • Beneficios:
      • Escalado independiente por componente
      • Deployments aislados (sin afectar toda la app)
    • Ejemplo:Uber (servicios separados para mapas, pagos, notificaciones)
    Microservicios
  3. Serverless (FaaS)
    • Cómo funciona: Ejecuta código en respuesta a eventos (sin gestionar servidores)
    • Proveedores: AWS Lambda, Azure Functions
    • Caso de uso: Procesamiento de archivos, APIs ligeras
    Serverless