Level // 03

Arquitectura y backend sostenible

Algoritmos, bases de datos, protocolos y cachés: cómo gastar menos CPU, memoria y red en el servidor

AVANCE DEL MÓDULO0 / 5
UNIDAD 0101 / 05(requiere iniciar sesión)
Eficiencia algorítmica y consumo

Por qué la complejidad de un algoritmo acaba siendo energía, memoria y hardware

  • Energía es potencia por tiempo: el tiempo de CPU es el que manda
  • La notación O grande, leída en vatios
  • Memoria, estructuras de datos y lenguajes
  • Dónde merece la pena optimizar
ABRIR UNIDAD →
UNIDAD 0202 / 05(requiere iniciar sesión)
Bases de datos eficientes

Esquemas, índices y consultas que no hacen trabajar al servidor de más

  • Por qué la base de datos suele ser el cuello de botella
  • Tipos de datos ajustados y esquemas con criterio
  • Índices: cuándo ayudan y cuándo estorban
  • Consultas que no leen de más, en MySQL y en Elasticsearch
ABRIR UNIDAD →
UNIDAD 0303 / 05(requiere iniciar sesión)
Protocolos y payloads eficientes

Enviar sólo lo necesario, comprimido y en el formato adecuado

  • El coste de cada byte, en los tres extremos del viaje
  • Adelgazar las respuestas: campos, compresión y formato
  • HTTP/2, HTTP/3 y conexiones reutilizadas
  • REST frente a gRPC: cuándo compensa cada uno
ABRIR UNIDAD →
UNIDAD 0404 / 05(requiere iniciar sesión)
Estrategias de caché

No calcular dos veces lo que ya se sabe, y saber cuándo olvidarlo

  • Qué es una caché y por qué ahorra trabajo
  • Las capas: navegador, CDN, aplicación y base de datos
  • Tiempo de vida, invalidación y tasa de aciertos
  • Cuándo la caché gasta más de lo que ahorra
ABRIR UNIDAD →
UNIDAD 0505 / 05(requiere iniciar sesión)
Tareas programadas eficientes

Procesos en segundo plano que trabajan cuando hace falta, cuanto hace falta y a la hora más limpia

  • El trabajo que nadie ve: cron, colas y procesos en segundo plano
  • Sondeo frente a eventos
  • Procesar por lotes y sólo lo que ha cambiado
  • Elegir la hora: evitar picos y buscar electricidad limpia
ABRIR UNIDAD →