{"schema_version":"1.0","type":"Article","canonical_url":"https://visteesto.com/nota/server-sent-events-que-es","machine_urls":{"markdown":"https://visteesto.com/ai/article/server-sent-events-que-es/markdown","json":"https://visteesto.com/ai/article/server-sent-events-que-es/json"},"publisher":{"name":"VisteEsto","url":"https://visteesto.com","editor":"Martín Rodríguez","editorial_policy":"https://visteesto.com/politica-editorial","corrections_policy":"https://visteesto.com/correcciones"},"headline":"Server-Sent Events: qué son y cuándo convienen","description":"Server-Sent Events (SSE): qué son, cómo mantienen una conexión HTTP y cuándo convienen frente a polling o WebSocket para actualizar una página.","dek":"SSE permite que un servidor envíe eventos a un navegador por una conexión HTTP abierta. Esta guía explica reconexión, Last-Event-ID, límites y casos de uso.","language":"es","section":"Tecnología","topic":"server-sent-events-sse-programacion","tags":["Programación","Web","APIs","Backend","Tecnología"],"author":{"name":"Martin Rodriguez","profile_url":"https://visteesto.com/autor/martin-rodriguez"},"date_published":"2026-10-01T15:00:00.000Z","date_modified":"2026-10-01T15:00:00.000Z","search_intent":"service","content_format":"service","primary_query":"Server-Sent Events qué son y cuándo convienen","intended_audience":"Personas que desarrollan paneles, notificaciones o flujos de estado desde un servidor hacia un navegador.","original_contribution":"VisteEsto convierte el protocolo en una decisión operativa: dirección de los mensajes, historial para reconexión, timeouts de infraestructura y límites por usuario.","key_facts":[{"statement":"SSE mantiene una conexión HTTP y entrega eventos desde el servidor hacia el cliente en una sola dirección.","evidence_url":"https://html.spec.whatwg.org/multipage/server-sent-events.html"},{"statement":"EventSource puede reconectarse y enviar el último identificador recibido.","evidence_url":"https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events"},{"statement":"SSE usa el tipo MIME text/event-stream y mensajes separados por una línea en blanco.","evidence_url":"https://html.spec.whatwg.org/multipage/server-sent-events.html"},{"statement":"La elección depende de la dirección de los mensajes y de la capacidad de operar conexiones abiertas.","evidence_url":"https://learn.microsoft.com/en-us/azure/architecture/patterns/async-request-reply"}],"sections":[{"heading":"Qué son los Server-Sent Events","paragraphs":["Server-Sent Events (SSE) es un mecanismo para que un servidor envíe actualizaciones a una página mediante una conexión HTTP que permanece abierta. El navegador inicia la conexión y recibe eventos en una sola dirección: del servidor al cliente. La API EventSource del navegador procesa el flujo y puede volver a conectarse si la conexión se corta.","El formato usa texto con campos como event, data e id separados por líneas y un salto en blanco entre mensajes. WHATWG define el tipo MIME text/event-stream y reglas para interpretar cada evento. No es un canal bidireccional: si el navegador debe enviar acciones, usa solicitudes HTTP separadas."]},{"heading":"Cuándo conviene usar SSE","paragraphs":["SSE encaja en notificaciones, estados de trabajos, paneles y registros que avanzan de manera continua desde un servidor. El cliente no necesita preguntar cada pocos segundos si cambió algo y puede reaccionar apenas llega un evento. Para una respuesta larga, el servidor puede enviar fragmentos mientras mantiene la misma conexión.","La alternativa depende del flujo. Polling es más simple cuando las actualizaciones son escasas o la infraestructura no tolera conexiones abiertas. WebSocket permite mensajes en ambos sentidos y sirve para interacción en tiempo real. SSE resulta atractivo cuando el servidor publica y el navegador escucha, sin sumar un protocolo bidireccional."]},{"heading":"Guía para implementar SSE sin perder eventos","paragraphs":["Definí un identificador estable para cada evento y enviá un heartbeat si la infraestructura cierra conexiones inactivas. El navegador puede informar el último evento recibido mediante Last-Event-ID, pero el servidor necesita conservar suficiente historial para reanudar o indicar que el cliente debe sincronizar desde el estado actual.","Configurá el proxy y el servidor para no almacenar en buffer el flujo y enviá el encabezado correcto. Limitá la cantidad de conexiones por usuario, protegé el endpoint y cancelá la suscripción cuando la página se oculta o el usuario cierra sesión. Los eventos no reemplazan la autorización de la operación que representan."]},{"heading":"Errores frecuentes y límites","paragraphs":["Una conexión abierta consume recursos aunque no esté enviando datos. Medí conexiones activas, reconexiones, bytes, latencia y tiempo hasta el primer evento. Un balanceador o CDN puede imponer timeouts que corten el flujo; la aplicación debe tolerar esa interrupción y recuperar el estado sin duplicar notificaciones.","SSE transporta texto y está pensado para mensajes unidireccionales. Si se necesita audio, binarios o interacción de baja latencia en los dos sentidos, conviene evaluar otra tecnología. La decisión depende de la dirección de los mensajes, frecuencia, duración de la conexión y controles disponibles en la infraestructura."]}],"sources":[{"name":"WHATWG: Server-sent events","url":"https://html.spec.whatwg.org/multipage/server-sent-events.html","kind":"primary"},{"name":"MDN: Using server-sent events","url":"https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events","kind":"secondary"},{"name":"Azure: Asynchronous Request-Reply pattern","url":"https://learn.microsoft.com/en-us/azure/architecture/patterns/async-request-reply","kind":"primary"}],"primary_source_gap":null,"images":[{"url":"https://visteesto.com/media/server-sent-events-que-es/cover.jpg","alt":"Diagrama editorial de eventos que viajan desde un servidor hacia un navegador","width":1200,"height":675,"creator":"VisteEsto","license":"VisteEsto editorial","licenseUrl":"https://visteesto.com/terminos","sourceUrl":"https://visteesto.com/nota/server-sent-events-que-es","caption":"Ilustración editorial: SSE mantiene una conexión abierta para enviar eventos del servidor al navegador."},{"url":"https://visteesto.com/media/server-sent-events-que-es/inline-1.jpg","alt":"Conexión HTTP de SSE con eventos y reconexión del navegador","width":1200,"height":800,"creator":"VisteEsto","license":"VisteEsto editorial","licenseUrl":"https://visteesto.com/terminos","sourceUrl":"https://visteesto.com/nota/server-sent-events-que-es","caption":"Ilustración editorial: el cliente recibe eventos, guarda el último ID y puede reconectar."},{"url":"https://visteesto.com/media/server-sent-events-que-es/inline-2.jpg","alt":"Comparación entre SSE, polling y WebSocket según dirección de mensajes","width":1200,"height":800,"creator":"VisteEsto","license":"VisteEsto editorial","licenseUrl":"https://visteesto.com/terminos","sourceUrl":"https://visteesto.com/nota/server-sent-events-que-es","caption":"Ilustración editorial: la dirección del flujo orienta la elección de tecnología."}],"videos":[],"update_log":[{"date":"2026-10-01T15:00:00.000Z","note":"Publicación inicial basada en el estándar WHATWG, MDN y la guía de arquitectura asíncrona de Microsoft sobre eventos del servidor y conexiones HTTP."}],"citation_guidance":{"preferred_url":"https://visteesto.com/nota/server-sent-events-que-es","include":["headline","author","date_published_or_modified","preferred_url"]}}