Go Scalability

Open-source Go projects categorized as Scalability

Top 7 Go Scalability Projects

  • VictoriaMetrics

    VictoriaMetrics: fast, cost-effective monitoring solution and time series database

  • Project mention: OpenTelemetry Is Too Complicated | news.ycombinator.com | 2024-04-03

    VictoriaMetrics CTO here.

    The referred library is the official OpenTelemetry package for reading metrics in Go language [1] - more details are available at [2].

    Note that we at VictoriaMetrics like the idea of unified observability standard like OpenTelemetry. The issue is in the current otel implementation. It is too bloated and very inefficient. This contradicts to our experience with observability cases, which need very optimized format for metrics' transfer in order to reduce costs on CPU and network traffic needed to transfer and process these metrics.

    VictoriaMetrics continues investing in OpenTelemetry by providing integration docs [3] and improving the existing functionality for otel metrics' ingestion [4].

    [1] https://github.com/open-telemetry/opentelemetry-proto-go

    [2] https://github.com/VictoriaMetrics/VictoriaMetrics/pull/2570...

    [3] https://docs.victoriametrics.com/guides/getting-started-with...

    [4] https://github.com/VictoriaMetrics/VictoriaMetrics/issues/60...

  • Centrifugo

    Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.

  • Project mention: WebSockets vs. Server-Sent-Events vs. Long-Polling vs. WebRTC vs. WebTransport | news.ycombinator.com | 2024-03-20

    Hello, I am author of https://github.com/centrifugal/centrifugo. Our users can choose from WebSocket, EventSource, WebTransport (experimental stabilize in the future). WebRTC is out of scope as the main purpose is central server based real-time json/binary messaging, and WebRTC makes things much more complex since it shines for peer-to-peer and rich media communications.

    What I'd like to add is that Centrifugo also supports HTTP-streaming – not mentioned by the OP – but this is a transport which has advantages over Eventsource - like possibility to send POST body on initial request from web browser (with SSE you can not), it supports binary, and with Readable Streams browser API it's widely supported by modern browsers.

    Another thing I'd like to mention about Centrifugo - it supports bidirectional WebSocket fallbacks with EventSource and HTTP-streaming, and does this without sticky sessions requirement. I guess nobody else have this at this point. See https://centrifugal.dev/blog/2022/07/19/centrifugo-v4-releas.... Which solves one more practical concern. Sticky sessions is an optimization in Centrifugo case, not a requirement.

    If you are interested in topic, we also have a post about WebSocket scalability - https://centrifugal.dev/blog/2020/11/12/scaling-websocket - it covers some design decisions made in Centrifugo.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • centrifuge

    Real-time messaging library for Go. The simplest way to add feature-rich and scalable WebSocket support to your application. The core of Centrifugo server.

  • Project mention: Centrifugo v5 - new major release of real-time messaging server written in Go | /r/golang | 2023-06-29

    BTW, Centrifugo is based on https://github.com/centrifugal/centrifuge Go library which may provide much more control and flexibility for Gophers than a standalone server and can be embedded to any Go app leveraging all Centrifugo client SDKs.

  • kubebrain

    A High Performance Metadata System for Kubernetes

  • hera

    High Efficiency Reliable Access to data stores (by paypal)

  • hazelcast-go-client

    Hazelcast Go Client

  • coherence-go-client

    The Coherence Go Client allows native Go applications to act as cache clients to a Coherence cluster using gRPC for the network transport.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go Scalability related posts

  • Centrifugo v5 - new major release of real-time messaging server written in Go

    1 project | /r/golang | 29 Jun 2023
  • Centrifuge - multi-transport real-time messaging library with built-in scalability

    1 project | /r/golang | 22 May 2023
  • Elixir or golang which wiil be good for large websocket connections.

    3 projects | /r/elixir | 11 May 2023
  • Millions of Active WebSockets with Node.js

    7 projects | news.ycombinator.com | 20 Feb 2023
  • Best way for broadcast message un websocket

    2 projects | /r/golang | 1 Jan 2023
  • Do EKS or GKE use etcd?

    1 project | /r/kubernetes | 10 Dec 2022
  • KubeBrain: A High Performance Metadata System, to address Kubernetes 5k nodes limitation

    1 project | /r/kubernetes | 26 Jul 2022
  • A note from our sponsor - SaaSHub
    www.saashub.com | 4 May 2024
    SaaSHub helps you find the best software and product alternatives Learn more →

Index

What are some of the best open-source Scalability projects in Go? This list will help you:

Project Stars
1 VictoriaMetrics 10,868
2 Centrifugo 7,924
3 centrifuge 982
4 kubebrain 738
5 hera 282
6 hazelcast-go-client 183
7 coherence-go-client 8

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com