Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression. Learn more →
Centrifuge Alternatives
Similar projects and alternatives to centrifuge
-
websocket
A fast, well-tested and widely used WebSocket implementation for Go.
-
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
-
Mercure
An open, easy, fast, reliable and battery-efficient solution for real-time communications
-
beaver
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps.
-
-
-
kcptun
A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。N:M 多重化と FEC を備えた KCP に基づく安定した安全なトンネル。 N:M 다중화 및 FEC를 사용하는 KCP 기반의 안정적이고 안전한 터널입니다. Un tunnel stable et sécurisé basé sur KCP avec multiplexage N:M et FEC.
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
-
-
go-dataframe
A simple package to abstract away the process of creating usable DataFrames for data analytics. This package is heavily inspired by the amazing Python library, Pandas.
-
-
Centrifugo
Scalable real-time messaging server in a language-agnostic way. Set up once and forever.
-
tauri
Build smaller, faster, and more secure desktop applications with a web frontend.
-
gnet
🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。
-
gonum
Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more
-
-
-
-
nbio
Pure Go 1000k+ connections solution, support tls/http1.x/websocket and basically compatible with net/http, with high-performance and low memory cost, non-blocking, event-driven, easy-to-use.
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
centrifuge reviews and mentions
- Millions of Active WebSockets with Node.js
-
Best way for broadcast message un websocket
What https://github.com/centrifugal/centrifuge does:
-
Gorilla/websocket or Melody?
Have you considered https://github.com/centrifugal/centrifuge? It also uses Gorilla WebSocket for WebSocket transport at the moment – but it's hidden inside and may be replaced if needed since Transport interface is pluggable. It's more heavyweight though than both Melody and Gorilla WebSocket but provides much more functionality out-of-the-box.
-
What libraries are missing?
Not a Socket.IO compatible but maybe you will find it useful/interesting: https://github.com/centrifugal/centrifuge
-
Centrifugo v4 released – with own WebSocket emulation layer, optimized client protocol, unified SDK behavior, experimental HTTP/3 and WebTransport support
Thanks! BTW, Centrifugo's core is based on https://github.com/centrifugal/centrifuge Go library - which theoretically can be more flexible and extensible solution for Go developers than Centrifugo server since server dictates some auth/permission/channel/api rules.
-
TCP or websockets for chat server
Hello, +1 to WebSockets. If you need to choose WS library – go with https://github.com/gorilla/websocket or https://github.com/gobwas/ws. You can also look at Centrifugo server (https://centrifugal.dev/, supports WebSocket, SockJS bidi transports, also EventSource, HTTP-streaming, GRPC unidirectional transports and many builtin features) or https://github.com/centrifugal/centrifuge Go library.
-
Looking for lowest-latency WebSocket server/library
Maybe https://github.com/centrifugal/centrifuge would be a better fit for op use case (the library Centrifugo is based on, still evolving and has not v1 release though). Centrifugo is a standalone server and may limit developers that pursue the lowest latency due to attempt being generic. Don't want to say that Centrifugo performs bad - but it's mostly about features available out-of-the-box and simple scalability to many machines.
-
Centrifuge v0.16.0 now supports unidirectional transports for real-time messaging updates such as unidirectional GRPC stream, EventSource(SSE), Fetch Readable Stream
With Centrifuge v0.16.0 it's now possible to use a bunch of unidirectional transports for cases where bidirectional communication not really needed. New release includes several examples for unidirectional GRPC stream, EventSource, Fetch Readable Stream (all links in release notes) and even unidirectional WebSocket (ha-ha!). Previously I could not find a good way to fit this into Centrifuge protocol – now I think I found a pretty elegant solution. I believe this could give developers more choice especially for simple use cases without frequent dynamic subscriptions/unsubscriptions (though with new API it's possible to subscribe/unsubscribe specific client cluster-wide). The additional beauty of unidirectional approach is that it does not really require using specific Centrifuge libraries for different environments (since bidirectional communication is pretty hard to use without extra library on top of client-server framing protocol) - just use native browser APIs or GRPC-generated code to connect and receive real-time updates.
-
A note from our sponsor - InfluxDB
www.influxdata.com | 26 Mar 2023
Stats
centrifugal/centrifuge is an open source project licensed under MIT License which is an OSI approved license.