La computación en la nube
Desarrollo de Aplicaciones en Internet
La computación en la nube
Desarrollo de Aplicaciones en Internet
Historia
- Sistemas tradicionales: self-hosting (gestionado por uno mismo), managed-hosting (infraestructura gestionada por terceros).
- Amazon Web Services abre al público en 2006.
- Las primeras referencias al término son de 1996 (la nube como metáfora de internet).
Introducción
- Servicios y recursos computacionales ofrecidos por terceros, escalables y disponibles bajo demanda.
- Similar al consumo de electricidad o de agua.
- Estimación de costes con la calculadora de AWS o la de Google Cloud Platform.
Características
- Pool de recursos computacionales disponible para todos los clientes.
- Virtualización a todos los niveles para maximizar la utilización del hardware.
- Escalado elástico (en ambos sentidos) e inmediato según las necesidades.
- Se paga por lo que se usa (por horas, minutos, GBs o MBs, por ejemplo).
- Reducción de CAPEX (gastos de capital), pero en ocasiones también de OPEX (gastos operativos).
- Acceso automático vía APIs web o SDK a todos los servicios.
Capacidad frente a demanda
![]()
X-as-a-Service
- X puede ser infraestructura (IaaS), plataforma (PaaS), aplicaciones (SaaS), almacenamiento, bases de datos, logging, seguridad, mensajes, centros de datos, traducción automática, reconocimiento de objetos, etc.
Centros de datos
- Gran consumo eléctrico.
- Eficiencia energética optimizada.
- Estimaciones de 2016 para Google: 2.500.000 de servidores aprox.
- Centros de datos submarinos o en plataformas marinas.
Tecnologías de código abierto
Proveedores de computación en la nube
- Amazon Web Services
- Windows Azure
- Google Compute Engine
- IBM SoftLayer
- Rackspace
- …
Tecnologías relacionadas
- “Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It works with a range of container tools, including Docker”
Tecnologías relacionadas
- “A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another. A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.”
Tecnologías relacionadas
- Computación de altas prestaciones: GPUs en la nube.