¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Para qué sirve el código sin servidor

Después de esta lección: Puedo decir para qué tipo de trabajo sirve el código sin servidor.

Lección de 45 minSin comandos

Cuarenta formularios al día

Una inmobiliaria de Málaga tiene un formulario en su web: "Quiero visitar este piso". Llegan unos 40 al día. Cada uno tarda dos segundos en procesarse y avisar a un agente.

Para eso tiene un servidor encendido las 24 horas, todos los días. Trabaja menos de dos minutos al día. El resto del tiempo espera, y se paga igual.

Al final de esta lección

Nota

Puedo decir para qué tipo de trabajo sirve el código sin servidor.

Palabras clave

PalabraQué significaEjemplo
Sin servidorcódigo que el proveedor ejecuta solo cuando hace falta
Funcióntrozo de código que recibe algo y devuelve algo
Eventoalgo que pasa y pone en marcha la funciónun formulario enviado
Ejecucióncada vez que la función se ejecuta
Arranque en fríoretraso de la primera ejecución tras un rato parada
Tiempo límitelo máximo que puede durar una ejecución

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Una función corre cuando llega un evento

Con el código sin servidor, no alquilas una máquina. Subes una función y dices qué evento la pone en marcha.

Cuando alguien envía el formulario, el proveedor arranca la función, le pasa los datos y la para al terminar. Los servidores existen, pero los gestiona el proveedor y tú no los ves. Si no llega ningún evento, no se ejecuta nada.

Prueba: una función que recibe un evento

Código: python
# Una función sin servidor recibe un evento y devuelve una respuesta.
# El proveedor la llama cada vez que alguien envía el formulario.
def manejar(evento):
    nombre = evento["nombre"]
    piso = evento["piso"]
    # Aquí iría el envío del aviso a la agencia
    return "Aviso enviado: " + nombre + " pregunta por " + piso

# Simulamos dos envíos del formulario
print(manejar({"nombre": "Lucía", "piso": "ático en El Palo"}))
print(manejar({"nombre": "Andrés", "piso": "bajo en Teatinos"}))

# Añade un tercer envío con tu nombre y un piso en Huelin.

Pagas por cada ejecución

El proveedor cobra por ejecución y por el tiempo que dura, medido en milisegundos. Cada mes suele regalar un millón de ejecuciones.

Para la inmobiliaria, 40 formularios al día son unos 1.200 al mes. Eso no llega ni a la parte gratuita. Con mucho tráfico constante, la cuenta cambia: un servidor siempre ocupado sale más barato.

Ejemplo: servidor fijo o función, al mes

CasoServidor siempre encendidoFunción sin servidor
40 peticiones al día15 euros0 euros, dentro de lo gratuito
20.000 peticiones al día15 eurosunos 2 euros
5 millones al día, todo el día60 euros, con más servidoresmás de 300 euros

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

No sirve para todo

Una función tiene un tiempo límite, normalmente 15 minutos. Convertir un vídeo de una hora no cabe.

Además, tras un rato sin uso, la primera ejecución tarda algo más: es el arranque en frío. En un formulario no se nota. En un juego en línea que debe responder al instante, sí. Elígela para trabajos cortos, que llegan a ratos y reaccionan a algo.

Un error frecuente

Advertencia

Mucha gente cree que "sin servidor" significa que no hay servidores. Sí los hay. La diferencia es que los gestiona el proveedor y solo pagas cuando tu código se ejecuta. Por eso un fallo del proveedor también puede parar tus funciones.

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.