Un paquete de chat en tiempo real para Laravel que añade mensajes directos, grupos, archivos adjuntos y una interfaz de mensajería integrada.
- Estrellas
- 10,948
- Forks
- 753
- Issues abiertos
- 25
- Último commit
- anteayer
¿Qué es?
Centrifugo es un servidor de mensajería en tiempo real de código abierto que entrega mensajes al instante a los usuarios conectados mediante WebSocket, HTTP-streaming, Server-Sent Events, GRPC y WebTransport. Funciona como un servidor PUB/SUB orientado a usuarios: los clientes se suscriben a canales y el backend de la aplicación publica mensajes en ellos a través de una API HTTP o GRPC sencilla.
Como Centrifugo es independiente del lenguaje del backend, separa la entrega en tiempo real de la lógica de negocio. Los SDK oficiales para clientes son compatibles con JavaScript, Dart/Flutter, Swift, Java, Python, Go y .NET; para casos sencillos, se puede usar cualquier cliente estándar para el transporte elegido, sin necesidad de un SDK.
El escalado se gestiona mediante Redis (incluidos Redis Cluster y los sistemas de almacenamiento compatibles), PostgreSQL o NATS. El proyecto también ofrece historial de canales con recuperación de mensajes al reconectarse, presencia con eventos de entrada y salida, autenticación mediante JWT o proxy, compresión delta, métricas de Prometheus y una interfaz web de administración integrada.
Funciones clave
- 01Entrega mensajes mediante WebSocket, SSE, HTTP-streaming, GRPC y WebTransport (experimental).
- 02Permite escalar con Redis, Redis Cluster, PostgreSQL o NATS como broker.
- 03Publica mensajes en canales mediante una API de servidor HTTP o GRPC sencilla.
- 04Admite el historial de canales con recuperación automática tras una reconexión.
- 05Ofrece presencia en línea y notificaciones de entrada y salida por canal.
- 06Ofrece autenticación de conexiones mediante JWT o proxy.
- 07Expone métricas de Prometheus e incluye una interfaz web de administración integrada.
Casos de uso
- Crear funciones de chat o mensajería en una aplicación web o móvil.
- Enviar comentarios, notificaciones o actualizaciones de datos en directo a los navegadores.
- Transmitir respuestas de modelos de IA a los usuarios en tiempo real.
- Dar soporte a juegos multijugador o herramientas colaborativas que necesitan sincronización de baja latencia.
Inicio rápido
- 1
Ejecuta Centrifugo con la interfaz de administración integrada mediante Docker
docker run -it --rm -p 8000:8000 centrifugo/centrifugo:latest centrifugo --client.insecure --admin.enabled --admin.insecure - 2
Abre http://localhost:8000 para acceder a la interfaz de administración
- 3
Sigue las instrucciones de instalación para binarios nativos, Homebrew, paquetes y configuración de producción
Antes de usarlo
- El inicio rápido usa opciones inseguras que desactivan la autenticación; no deben usarse en producción.
- La compatibilidad con WebTransport es experimental.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es centrifugo?
- Servidor PUB/SUB en tiempo real, autohospedado e independiente del lenguaje, que envía mensajes a los usuarios mediante WebSocket, SSE, HTTP-streaming, GRPC y WebTransport. Centrifugo es un servidor de mensajería en tiempo real de código abierto que entrega mensajes al instante a los usuarios conectados mediante WebSocket, HTTP-streaming, Server-Sent Events, GRPC y WebTransport. Funciona como un servidor PUB/SUB orientado a usuarios: los clientes se suscriben a canales y el backend de la aplicación publica mensajes en ellos a través de una API HTTP o GRPC sencilla.
- ¿centrifugo es gratuito? ¿Qué licencia tiene?
- centrifugo es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿centrifugo sigue mantenido?
- Mantenimiento activo. El último commit de centrifugo fue el 4 nov 2026.
- ¿Para qué puedo usar centrifugo?
- Crear funciones de chat o mensajería en una aplicación web o móvil. Enviar comentarios, notificaciones o actualizaciones de datos en directo a los navegadores. Transmitir respuestas de modelos de IA a los usuarios en tiempo real. Dar soporte a juegos multijugador o herramientas colaborativas que necesitan sincronización de baja latencia.
- ¿Cómo se instala centrifugo?
- Ejecuta Centrifugo con la interfaz de administración integrada mediante Docker: docker run -it --rm -p 8000:8000 centrifugo/centrifugo:latest centrifugo --client.insecure --admin.enabled --admin.insecure Abre http://localhost:8000 para acceder a la interfaz de administración Sigue las instrucciones de instalación para binarios nativos, Homebrew, paquetes y configuración de producción
- ¿Dónde consigo centrifugo?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/centrifugal/centrifugo
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca PHP para enviar eventos, autenticar usuarios y consultar canales mediante la API HTTP de Pusher Channels.
Servidor de chat basado en uWebSockets.js que ofrece una alternativa a XMPP, con backend en Node.js, MongoDB y Redis.
Servidor de voz a texto en tiempo real y autoalojado, con ASR en streaming, diarización de hablantes, traducción en vivo y APIs compatibles con OpenAI y Deepgram.
Lista curada de fuentes de datos públicas y de pago que transmiten o actualizan datos en tiempo real sobre finanzas, transporte, clima, noticias, ciberseguridad y más.
Servidor de código abierto en tiempo real que añade comunicación bidireccional fiable mediante WebSocket y SSE a backends existentes.