Centrifugo é um servidor de mensagens em tempo real escalonável e de código aberto. Centrifugo pode entregar mensagens instantaneamente para usuários on-line de aplicativos conectados por meio de transportes suportados (WebSocket, streaming HTTP, SSE/EventSource, GRPC, WebTransport). Centrifugo tem o conceito de assinatura de canal – portanto, é um servidor PUB/SUB voltado para o usuário.
Centrifugo é independente de linguagem e pode ser usado para criar aplicativos de bate-papo, comentários ao vivo, jogos multijogador, visualizações de dados em tempo real, ferramentas colaborativas, etc., em combinação com qualquer back-end. É adequado para arquiteturas modernas e permite dissociar a lógica de negócios da camada de transporte em tempo real.
Vários SDKs de clientes oficiais para desenvolvimento de navegador e dispositivos móveis envolvem o protocolo bidirecional. Além disso, o Centrifugo oferece suporte a uma abordagem unidirecional para casos de uso simples, sem dependência de SDK.
A ideia central do Centrifugo é simples – é um servidor PUB/SUB baseado em transportes modernos em tempo real:
A parte difícil é tornar esse conceito pronto para produção, eficiente, flexível e disponível em diferentes ambientes de aplicação. Centrifugo é uma solução madura que já ajudou muitos projetos com a adição de recursos em tempo real e escalabilidade para muitas conexões simultâneas. Centrifugo oferece um conjunto de recursos não disponíveis em outras soluções de código aberto da área:
Este repositório é hospedado por packagecloud.io.
Agradecemos também à JetBrains por oferecer suporte ao OSS (a maior parte do código aqui escrito em Goland):