
WebSockets Course
Domina los WebSockets desde cero y construye las aplicaciones en tiempo real que los usuarios modernos esperan. Este curso te lleva desde los fundamentos del protocolo hasta el despliegue en producción, cubriendo la seguridad, el escalado y la optimización del rendimiento. Tanto si estás construyendo aplicaciones de chat, paneles en directo o herramientas multijugador, tendrás las competencias para publicar con confianza.
Lo que vas a aprender:
Implementa servidores WebSocket full-duplex y clientes de navegador desde cero usando APIs principales.
Asegura los puntos de conexión WebSocket con autenticación JWT, validación de origen y cifrado TLS.
Diseña la arquitectura de sistemas escalables horizontalmente usando intermediarios de publicación/suscripción y gestión de estado distribuida.
Gestiona el encuadre, enrutamiento y validación de esquemas de mensajes binarios y JSON a través de conexiones activas.
Construye conjuntos de pruebas exhaustivas que cubran escenarios de pruebas unitarias, de integración, de carga y de caos.
Despliega servicios WebSocket en contenedores con actualizaciones continuas, comprobaciones de estado y perfilado de rendimiento.
Cómo estudias de forma práctica WebSockets Course
Cómo practicas WebSockets Course
Para ti que eres empresa y quieres formar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 39 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesIntroducción a WebSockets y la Web en Tiempo Real
Introducción a WebSockets y la Web en Tiempo Real
Lección 1 • Fundamentos del Protocolo WebSocket
Define el protocolo WebSocket, su especificación RFC y su papel para permitir la comunicación full-duplex. Proporciona a los estudiantes la base técnica antes de la implementación.
Lección 2 • El Proceso de Handshake de WebSocket
Explica el mecanismo de actualización HTTP que inicia una conexión WebSocket. Los estudiantes comprenden cómo una solicitud HTTP estándar transiciona a un canal WebSocket persistente.
Lección 3 • WebSocket vs. Arquitectura HTTP
Contrasta WebSocket y HTTP a nivel arquitectónico, cubriendo las diferencias en el ciclo de vida de la conexión. Prepara a los estudiantes para elegir el protocolo adecuado para un escenario dado.
Lección 4 • La Necesidad de la Comunicación en Tiempo Real
Explora por qué el HTTP tradicional se queda corto para escenarios de datos en vivo. Establece la motivación para estudiar WebSockets como un protocolo dedicado en tiempo real.
Capítulo 2OcultarOcultar detallesVer detallesConstruir Tu Primera Conexión WebSocket
Construir Tu Primera Conexión WebSocket
Lección 1 • Gestionar Eventos del Ciclo de Vida de la Conexión
Cubre los eventos open, message, error y close tanto en el lado del cliente como del servidor. Los estudiantes aprenden a manejar cada fase del ciclo de vida de forma limpia y predecible.
Lección 2 • Crear un Servidor WebSocket Básico
Explica cómo escribir un servidor mínimo que escucha conexiones WebSocket y reenvía mensajes. Introduce los manejadores de eventos del lado del servidor que se usarán a lo largo del curso.
Lección 3 • Configurar el Entorno de Desarrollo
Cubre la selección de herramientas, la instalación del entorno de ejecución y la estructura inicial del proyecto para el desarrollo con WebSockets. Garantiza que cada estudiante comience con un entorno coherente y funcional.
Lección 4 • Probar la Conexión con Herramientas de Desarrollo
Demuestra cómo inspeccionar tramas WebSocket en las herramientas de desarrollo del navegador y los paneles de red. Los estudiantes adquieren confianza para verificar que sus conexiones se comportan como se espera.
Lección 5 • Construir un Cliente WebSocket en el Navegador
Utiliza la API WebSocket nativa del navegador para conectarse al servidor e intercambiar mensajes. Los estudiantes ven el bucle completo cliente-servidor en acción por primera vez.
Capítulo 3OcultarOcultar detallesVer detallesEstructura de Tramas, Formatos de Datos y Codificación
Estructura de Tramas, Formatos de Datos y Codificación
Lección 1 • Transmisión de Datos Binarios
Introduce los tipos ArrayBuffer y Blob para enviar cargas útiles binarias a través de WebSockets. Los estudiantes pueden transferir imágenes, audio y otro contenido binario de manera eficiente.
Lección 2 • Estructura de la Trama WebSocket
Desglosa el formato de trama WebSocket, incluyendo los campos de código de operación, enmascaramiento y longitud de carga útil. Proporciona el conocimiento de bajo nivel necesario para comprender el comportamiento del protocolo y la depuración.
Lección 3 • Enviar y Recibir Mensajes de Texto
Cubre los requisitos de codificación UTF-8 para tramas de texto y patrones de serialización comunes. Los estudiantes pueden intercambiar datos legibles por humanos entre cliente y servidor de forma fiable.
Lección 4 • Trabajar con Cargas Útiles JSON
Establece JSON como el formato estándar de datos estructurados para mensajes WebSocket. Los estudiantes diseñan y analizan envolturas de mensajes tipados para su uso en aplicaciones reales.
Lección 5 • Fragmentación de Mensajes y Tramas de Continuación
Explica cómo los mensajes grandes se dividen en tramas de continuación y se reensamblan. Los estudiantes comprenden la fragmentación para evitar la pérdida de datos con cargas útiles grandes.
Capítulo 4OcultarOcultar detallesVer detallesArquitectura de WebSocket del Lado del Servidor
Arquitectura de WebSocket del Lado del Servidor
Lección 1 • Salas y Espacios de Nombres para Mensajería Dirigida
Introduce la agrupación lógica de conexiones en salas para la entrega de mensajes con alcance definido. Los estudiantes implementan operaciones de unirse a una sala, salir de ella y difusión dirigida.
Lección 2 • Mecanismos de Heartbeat y Ping-Pong
Explica las tramas ping y pong de WebSocket utilizadas para detectar conexiones inactivas. Los estudiantes implementan un bucle de heartbeat en el servidor que limpia clientes muertos automáticamente.
Lección 3 • Difundir Mensajes a Todos los Clientes
Implementa la difusión del lado del servidor para que cada cliente conectado reciba un mensaje simultáneamente. Los estudiantes construyen el mecanismo de publicación central subyacente a las aplicaciones de chat y feeds en vivo.
Lección 4 • Gestionar Múltiples Conexiones de Cliente
Cubre las estructuras de datos y patrones para rastrear todos los clientes WebSocket activos en el servidor. Los estudiantes implementan un registro de conexiones utilizado en cada función posterior del servidor.
Lección 5 • Manejar Errores y Caídas del Lado del Servidor
Cubre la propagación de errores, el manejo de excepciones no capturadas y el apagado ordenado del servidor. Los estudiantes construyen servidores resilientes que se recuperan sin perder todas las conexiones activas.
Capítulo 5OcultarOcultar detallesVer detallesAutenticación y Autorización en WebSockets
Autenticación y Autorización en WebSockets
Lección 1 • Expiración de Sesión y Renovación de Token
Maneja la expiración de tokens durante sesiones WebSocket de larga duración sin forzar la reconexión. Los estudiantes implementan la renovación de token iniciada por el servidor y la terminación ordenada de la sesión.
Lección 2 • Autenticación Basada en Token en el Handshake
Implementa la validación de tokens JWT u opacos durante la solicitud de actualización HTTP. Los estudiantes aseguran el punto de entrada de la conexión antes de que se intercambie ningún mensaje.
Lección 3 • Mensajes de Autenticación Posteriores al Handshake
Cubre un patrón alternativo donde el cliente envía las credenciales como primer mensaje después de conectarse. Los estudiantes implementan un flujo de mensajes de handshake de autenticación con cumplimiento de tiempo de espera.
Lección 4 • Desafíos de Autenticación en WebSockets
Destaca por qué los patrones estándar de autenticación por cookie y sesión no son fiables para las actualizaciones WebSocket. Motiva los enfoques basados en token cubiertos en las secciones siguientes.
Lección 5 • Autorización y Permisos Basados en Roles
Asocia roles de usuario al contexto de la conexión y los aplica en cada mensaje entrante. Los estudiantes previenen la escalada de privilegios dentro de una sesión WebSocket activa.
Capítulo 6OcultarOcultar detallesVer detallesEscalar WebSockets a Través de Múltiples Servidores
Escalar WebSockets a Través de Múltiples Servidores
Lección 1 • Estado Compartido con Cachés Distribuidas
Utiliza una caché distribuida para almacenar la pertenencia a salas y los datos de presencia de usuarios accesibles por todas las instancias del servidor. Los estudiantes eliminan el estado por instancia que se rompe al escalar.
Lección 2 • El Problema del Escalado Horizontal
Explica por qué un cliente conectado al servidor A no puede recibir mensajes difundidos desde el servidor B. Plantea la necesidad de una capa de publicación/suscripción compartida como la solución central de escalado.
Lección 3 • Integrar un Intermediario de Mensajes
Conecta cada instancia del servidor WebSocket a un intermediario de publicación/suscripción central para la entrega de mensajes entre servidores. Los estudiantes implementan operaciones de suscripción y publicación desde el proceso del servidor.
Lección 4 • Monitorización y Observabilidad a Escala
Instrumenta los servidores WebSocket con métricas, registros estructurados y rastreo distribuido. Los estudiantes pueden diagnosticar cuellos de botella de rendimiento y anomalías de conexión en producción.
Lección 5 • Balanceo de Carga de Conexiones WebSocket
Configura un balanceador de carga para distribuir las solicitudes de actualización WebSocket entre las instancias del servidor. Los estudiantes comprenden la configuración de sesiones persistentes y sus compromisos.
Capítulo 7OcultarOcultar detallesVer detallesFortalecimiento de la Seguridad para Aplicaciones WebSocket
Fortalecimiento de la Seguridad para Aplicaciones WebSocket
Lección 1 • Asegurar las Conexiones con TLS
Impone conexiones WebSocket cifradas utilizando el esquema wss:// y una configuración TLS adecuada. Los estudiantes configuran certificados y eliminan la exposición de WebSocket en texto plano.
Lección 2 • Validación de Entrada y Prevención de Inyecciones
Valida y desinfecta cada mensaje WebSocket entrante para prevenir ataques de inyección y deserialización. Los estudiantes aplican la validación de esquema como primer paso del procesamiento.
Lección 3 • Limitación de Tasa y Protección contra Denegación de Servicio
Implementa límites de tasa de mensajes por conexión y por usuario para prevenir el agotamiento de recursos. Los estudiantes configuran la limitación de conexiones y la desconexión automática de infractores.
Lección 4 • Seguridad de Dependencias y Bibliotecas
Aborda las vulnerabilidades introducidas a través de bibliotecas WebSocket de terceros y sus dependencias. Los estudiantes establecen un proceso para auditar y actualizar dependencias de forma segura.
Lección 5 • Secuestro de WebSocket entre Sitios
Explica cómo los sitios maliciosos pueden iniciar conexiones WebSocket utilizando las credenciales de la víctima. Los estudiantes implementan la validación de la cabecera Origin para bloquear intentos de secuestro entre sitios.
Capítulo 8OcultarOcultar detallesVer detallesDespliegue en Producción y Optimización del Rendimiento
Despliegue en Producción y Optimización del Rendimiento
Lección 1 • Agrupación de Conexiones y Gestión de Recursos
Gestiona los recursos del servidor limitando las conexiones concurrentes y reutilizando las conexiones descendentes. Los estudiantes previenen el agotamiento de recursos bajo una alta carga de conexiones.
Lección 2 • Contenerización y Orquestación
Empaqueta el servidor WebSocket en un contenedor y lo despliega con un orquestador para el escalado automatizado. Los estudiantes configuran verificaciones de salud y actualizaciones continuas sin perder conexiones.
Lección 3 • Optimizar el Rendimiento de Transferencia de Mensajes
Aplica procesamiento por lotes, compresión y optimizaciones de serialización para maximizar los mensajes por segundo. Los estudiantes reducen la sobrecarga por mensaje sin sacrificar la fiabilidad.
Lección 4 • Perfilado de Rendimiento e Identificación de Cuellos de Botella
Utiliza herramientas de perfilado para localizar cuellos de botella de CPU, memoria y E/S en el código del servidor WebSocket. Los estudiantes establecen una línea base y miden el impacto de cada optimización.
Lección 5 • Despliegue Continuo y Reversión
Establece una canalización de despliegue con pruebas automatizadas, lanzamiento por etapas y capacidad de reversión rápida. Los estudiantes envían cambios de WebSocket de forma segura con una interrupción mínima para el usuario.
Tu certificado válido de finalización
Este curso es para ti:
Desarrolladores backend: listos para añadir comunicación persistente y bidireccional a su pila.
Ingenieros full-stack: desarrollando funcionalidades que requieren datos en tiempo real sin recargas de página.
Desarrolladores frontend: con ganas de dominar toda la capa de tiempo real, no solo la interfaz de usuario.
Arquitectos de software: evaluando infraestructura WebSocket para un equipo o una hoja de ruta de producto.
Graduados de bootcamp: yendo más allá de las aplicaciones CRUD hacia sistemas dirigidos por eventos y en tiempo real.
Hackers independientes: lanzando herramientas multijugador o colaborativas sin un equipo de infraestructura dedicado.
Lo que dicen nuestros alumnos
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... agradezco todo lo que hacéis, ya os he recomendado a otras personas...

Me gusta cómo las lecciones van directas al grano y cómo puedo cambiar de capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de vídeos, ¡lo que acelera el proceso!

La plataforma es rápida, fácil de usar. La diversidad de contenido y los vídeos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en España?
¿Los cursos son gratuitos?
¿Cuál es la carga lectiva del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el coste o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















