[go: up one dir, main page]

Browse free open source Go Load Balancers and projects below. Use the toggles on the left to filter open source Go Load Balancers by OS, license, language, programming language, and project status.

  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 1
    RtspSimpleServer

    RtspSimpleServer

    ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy

    rtsp-simple-server is a ready-to-use and zero-dependency server and proxy that allows users to publish, read and proxy live video and audio streams. Publish live streams to the server Read live streams from the server. Proxy streams from other servers or cameras, always or on-demand. Streams are automatically converted from a protocol to another. For instance, it's possible to publish a stream with RTSP and read it with HLS. Serve multiple streams at once in separate paths Authenticate users; use internal or external authentication. Redirect readers to other RTSP servers (load balancing) Query and control the server through an HTTP API. Reload the configuration without disconnecting existing clients (hot reloading) Read Prometheus-compatible metrics. Run external commands when clients connect, disconnect, read or publish streams. Natively compatible with the Raspberry Pi Camera. Compatible with Linux, Windows and macOS, does not require any dependency or interpreter.
    Downloads: 74 This Week
    Last Update:
    See Project
  • 2
    frp

    frp

    A Fast Reverse Proxy

    frp stands for exactly what it is: a fast reverse proxy. It helps you expose a local server behind a NAT or firewall to the Internet. It is currently under development, but already supports TCP and UDP, as well as HTTP and HTTPS protocols where requests can be forwarded to internal services by domain name. It also has a P2P connect mode and many other nifty features. These include configuration files, environment variables, a dashboard that shows you frp's status and proxies' statistics information, an Admin UI that helps you check and manage frpc's configuration, and many others.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 3
    EasyDarwin

    EasyDarwin

    Industrial rtsp streaming server

    Open source, high-performance, industrial RTSP streaming server. A lot of optimization on streaming. KeyFrame cache, RESTful, and web management. Also, EasyDarwin supports distributed load balancing, a simple streaming media cloud platform architecture. Helps streaming media developers realize the latest mobile Internet streaming live and on-demand faster and easier. Simple, efficient, and stable open-source audio encoding library, which supports transcoding of various audio data into AAC format. EasyDarwin is able to transcode G.711A/PCMA, G.711U/PCMU, and other audio formats to Linear PCM. Provided to the public in the form of SDK, completely free to use. Provides a series of streaming media audio and video development practical tools to help developers quickly solve problems in the process of operation, maintenance and debugging.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 4
    COW

    COW

    HTTP proxy to automatically identify blocked sites

    HTTP proxy written in Go. COW can automatically identify blocked sites and use parent proxies to access. COW's design goal is automation. Ideally, users don't need to care about which websites are inaccessible, and they can directly connect to the website without slowing down the access speed due to the use of secondary agents. As an HTTP proxy, it can be provided to mobile devices; if deployed on a domestic server, it can be used as an APN proxy. Support HTTP, SOCKS5, shadowsocks and cow itself as a secondary proxy. Multiple secondary agents can be used to support simple load balancing. Automatically detect whether the website is blocked, and only use the secondary proxy for the blocked website. Automatically generate PACs containing directly connected websites, you can bypass COW when visiting these websites. Built-in common websites that can be directly connected , such as domestic social, video, bank, e-commerce and other websites (can be added manually).
    Downloads: 4 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    GoProxy

    GoProxy

    High performance proxy server implemented by golang

    The GoProxy is a high-performance http proxy, https proxy, socks5 proxy, ss proxy, websocket proxies, tcp proxies, udp proxies, game shield, game proxies. Supports forward proxies, reverse proxy, transparent proxy, internet nat proxies, https proxy load balancing, http proxy load balancing , socks5 proxies load balancing, socket proxy load balancing, ss proxy load balancing, TCP / UDP port mapping, SSH transit, TLS encrypted transmission, protocol conversion, anti-pollution DNS proxy, API authentication, speed limit, limit connection. Reverse proxy to help you expose a local server behind a NAT or firewall to the internet so that you or your visitors can access it directly and easily. Chained proxies, the program itself can be used as a proxy, and if it is set up, it can be used as a secondary proxy or even an N-level proxy.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 6
    ExternalDNS

    ExternalDNS

    Configure external DNS servers (AWS Route53, Google CloudDNS and other

    ExternalDNS synchronizes exposed Kubernetes Services and Ingresses with DNS providers. Inspired by Kubernetes DNS, Kubernetes' cluster-internal DNS server, ExternalDNS makes Kubernetes resources discoverable via public DNS servers. Like KubeDNS, it retrieves a list of resources (Services, Ingresses, etc.) from the Kubernetes API to determine the desired list of DNS records. Unlike KubeDNS, however, it's not a DNS server itself, but merely configures other DNS providers accordingly, e.g. AWS Route 53 or Google Cloud DNS. In a broader sense, ExternalDNS allows you to control DNS records dynamically via Kubernetes resources in a DNS provider-agnostic way. ExternalDNS' allows you to keep selected zones (via domain-filter) synchronized with Ingresses and Services of type=LoadBalancer in various cloud providers. ExternalDNS can become aware of the records it is managing therefore ExternalDNS can safely manage non-empty hosted zones.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    NGINX Ingress Controller

    NGINX Ingress Controller

    NGINX Ingress Controller for Kubernetes

    ingress-nginx is an Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer. It is built around the Kubernetes Ingress resource, using a ConfigMap to store the NGINX configuration. The goal of this Ingress controller is the assembly of a configuration file (nginx.conf). The main implication of this requirement is the need to reload NGINX after any change in the configuration file. Though it is important to note that we don't reload Nginx on changes that impact only an upstream configuration (i.e Endpoints change when you deploy your app). We use lua-nginx-module to achieve this. Check below to learn more about how it's done. Usually, a Kubernetes Controller utilizes the synchronization loop pattern to check if the desired state in the controller is updated or a change is required. To this purpose, we need to build a model using different objects from the cluster, in particular (in no special order) Ingresses, Services, Endpoints, Secrets, and Configmaps.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    gost

    gost

    GO Simple Tunnel, a simple tunnel written in golang

    A simple security tunnel written in Golang. Listening on multiple ports, multi-level forward proxies - proxy chain, standard HTTP/HTTPS/HTTP2/SOCKS4(A)/SOCKS5 proxy protocols support. Probing resistance support for web proxy, TLS encryption via negotiation support for SOCKS5 proxy. Support multiple tunnel types, tunnel UDP over TCP. Local/remote TCP/UDP port forwarding, TCP/UDP Transparent proxy, Shadowsocks Protocol (TCP/UDP), and SNI Proxy. Permission control, load balancing, route control, DNS resolver and proxy, and TUN/TAP Device. In GOST, GOST and other proxy services are considered as proxy nodes, GOST can handle the requests itself, or forward the requests to any one or more proxy nodes. In addition to configuring services directly from the command line, parameters can also be set by specifying the external configuration file with the -C parameter.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    Consul

    Consul

    Service networking solution to connect applications across any cloud

    Automate network configurations, discover services, and enable secure connectivity across any cloud or runtime. Quickly deploy Consul on Kubernetes leveraging Helm. Automatically inject sidecars for Kubernetes resources. Federate multiple clusters into a single service mesh. Deploy service mesh within any runtime or infrastructure - Bare Metal, Virtual Machines, and Kubernetes clusters, across any cloud. Resolve discovered services through integrated DNS. Automate 3rd party load balancers (F5, NGINX, HAProxy). Eliminate manual configuration of network devices. Secure services running in any environment leveraging intention based policies and automatic mTLS encryption between service mesh resources. Consul enables detecting the deployment of new services, changes to existing ones, and provides real time agent health to reduce downtime. Consul offers support for and integrations with many popular DevOps and Networking tools.
    Downloads: 1 This Week
    Last Update:
    See Project
  • DataHub is the leading open-source data catalog helping teams discover, understand, and govern their data assets. Icon
    DataHub is the leading open-source data catalog helping teams discover, understand, and govern their data assets.

    Modern Data Catalog and Metadata Platform

    Built on an open source foundation with a thriving community of 13,000+ members, DataHub gives you unmatched flexibility to customize and extend without vendor lock-in. DataHub Cloud is a modern metadata platform with REST and GraphQL APIs that optimize performance for complex queries, essential for AI-ready data management and ML lifecycle support.
    Learn More
  • 10
    CoreDNS

    CoreDNS

    CoreDNS is a DNS server that chains plugins

    CoreDNS is a DNS server/forwarder, written in Go, that chains plugins. Each plugin performs a (DNS) function. CoreDNS is a Cloud Native Computing Foundation graduated project. CoreDNS is a fast and flexible DNS server. The key word here is flexible: with CoreDNS you are able to do what you want with your DNS data by utilizing plugins. If some functionality is not provided out of the box you can add it by writing a plugin. CoreDNS can listen for DNS requests coming in over UDP/TCP (go'old DNS), TLS (RFC 7858), also called DoT, DNS over HTTP/2 - DoH - (RFC 8484) and gRPC (not a standard). Serve zone data from a file; both DNSSEC (NSEC only) and DNS are supported (file and auto). Retrieve zone data from primaries, i.e., act as a secondary server (AXFR only) (secondary). Sign zone data on-the-fly (dnssec). Load balancing of responses (loadbalance). Allow for zone transfers, i.e., act as a primary server (file + transfer). Automatically load zone files from disk (auto).
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    Go Micro

    Go Micro

    A framework for distributed systems development

    Go Micro is a framework for distributed systems development. Go Micro provides the core requirements for distributed systems development including RPC and Event driven communication. The Micro philosophy is sane defaults with a pluggable architecture. We provide defaults to get you started quickly but everything can be easily swapped out. Auth is built in as a first class citizen. Authentication and authorization enable secure zero trust networking by providing every service an identity and certificates. This additionally includes rule based access control. Load and hot reload dynamic config from anywhere. The config interface provides a way to load application level config from any source such as env vars, file, etcd. You can merge the sources and even define fallbacks. A simple data store interface to read, write and delete records. It includes support for memory, file and CockroachDB by default.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    Serf

    Serf

    Service orchestration and management tool

    Serf is a decentralized solution for service discovery and orchestration that is lightweight, highly available, and fault tolerant. Serf runs on Linux, Mac OS X, and Windows. An efficient and lightweight gossip protocol is used to communicate with other nodes. Serf can detect node failures and notify the rest of the cluster. An event system is built on top of Serf, letting you use Serf's gossip protocol to propagate events such as deploys, configuration changes, etc. Serf is completely masterless with no single point of failure. Serf is first and foremost a library with a command-line interface, serf. The Serf library is independent of the command line agent, serf. The serf binary is located under cmd/serf and can be installed stand alone by issuing the command go get -u github.com/hashicorp/serf/cmd/serf.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    AWS Load Balancer Controller

    AWS Load Balancer Controller

    A Kubernetes controller for Elastic Load Balancers

    AWS Load Balancer Controller is a controller to help manage Elastic Load Balancers for a Kubernetes cluster. It satisfies Kubernetes Ingress resources by provisioning Application Load Balancers. It satisfies Kubernetes Service resources by provisioning Network Load Balancers. This project was formerly known as "AWS ALB Ingress Controller", we rebranded it to be "AWS Load Balancer Controller". AWS ALB Ingress Controller was originated by Ticketmaster and CoreOS as part of Ticketmaster's move to AWS and CoreOS Tectonic. Learn more about Ticketmaster's Kubernetes initiative from Justin Dean's video at Tectonic Summit. AWS ALB Ingress Controller was donated to Kubernetes SIG-AWS to allow AWS, CoreOS, Ticketmaster and other SIG-AWS contributors to officially maintain the project. The controller watches for ingress events from the API server. When it finds ingress resources that satisfy its requirements, it begins the creation of AWS resources.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    BFE

    BFE

    A modern layer 7 load balancer from baidu

    BFE (Beyond Front End) is a modern layer 7 load balancer from baidu. BFE has a builtin plugin framework that makes it possible to develop new features rapidly by writing plugins. BFE is designed to provide every tenant a dedicated share of the instance. Each tenant’s configuration is isolated and remains invisible to other tenants. BFE supports HTTP, HTTPS, SPDY, HTTP2, gRPC, WebSocket, TLS, FastCGI, etc. Future support is planned for HTTP/3. BFE provides an advanced domain-specific language to describe routing rules which are easy to understand and maintain. BFE supports global load balancing and distributed load balancing for zone aware balancing, zone level failure resilience, overload protection etc. BFE provides a rich set of plugins for traffic management, security, observability, etc. BFE includes detailed built-in metrics for all subsystems. BFE writes various logs for trouble shooting, data analysis and visualization. BFE also supports distributed tracing.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    Cilium

    Cilium

    eBPF-based networking, security, and observability

    Cilium is open-source software for providing, securing and observing network connectivity between container workloads, cloud-native, and fueled by the revolutionary Kernel technology eBPF. Kubernetes doesn't come with an implementation of Load Balancing. This is usually left as an exercise for your cloud provider or in private cloud environments an exercise for your networking team. Cilium can attract this traffic with BGP and accelerate leveraging XDP and eBPF. Together these technologies provide a very robust and secure implementation of Load Balancing. Cilium and eBPF operate at the kernel layer. With this level of context we can make intelligent decisions about how to connect different workloads whether on the same node or between clusters. With eBPF and XDP Cilium enables significant improvements in latency and performance and eliminates the need for kube-proxy entirely.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    ClickHouse Go

    ClickHouse Go

    Golang driver for ClickHouse

    Golang SQL database client for ClickHouse. There are two version of this client, v1 and v2, available as separate branches. v1 is now in a state of maintenance, we will only accept PRs for bug and security fixes. Uses ClickHouse native format for optimal performance. Utilizes low level ch-go client for encoding/decoding and compression (versions >= 2.3.0). Supports native ClickHouse TCP client-server protocol. Compatibility with database/sql (slower than native interface!). Database/sql supports http protocol for transport. (Experimental). Marshal rows into structs (ScanStruct, Select). Unmarshal struct to row (AppendStruct). Connection pool Failover and load balancing. Bulk write support (for database/sql use begin->prepare->(in loop exec)->commit). AsyncInsert, named and numeric placeholders support. LZ4/ZSTD compression support. External data.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Easegress

    Easegress

    A Cloud Native traffic orchestration system

    The Easegres (formally known as Ease Gateway) helps to enlarge the availability and stability, also can improve the performance without changing a line of code. It also can smoothly support rapid business growth without re-arch the whole system. Easegress can be a typical seven-level API Gateway, it also can be a side-car to be a Service Mesh, and Easegress can perfectly work with other software to ship powerful features, such as: Kubernetes Ingress, Knaitve FaaS, and Eureka/Consul/Etcd/Nacos and so on. The Easegress can management the traffic and APIs, not only can do load balancing, canary development but also can aggregate and pipeline a number of APIs. This function automatically helps the website optimize its performance, such as: adding the cache, merging the requests, and reducing the network bandwidth. Sometimes, a site could have unexpectedly higher traffic, the Ease Gateway could help to protect the critical service for critical customers.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    Fabio

    Fabio

    Consul Load-Balancing made simple

    Fabio is an HTTP and TCP reverse proxy that configures itself with data from Consul. Traditional load balancers and reverse proxies need to be configured with a config file. The configuration contains the hostnames and paths the proxy is forwarding to upstream services. This process can be automated with tools like consul-template that generate config files and trigger a reload. Fabio works differently since it updates its routing table directly from the data stored in Consul as soon as there is a change and without restart or reloading. When you register a service in Consul all you need to add is a tag that announces the paths the upstream service accepts, e.g. urlprefix-/user or urlprefix-/order and fabio will do the rest. Fabio was developed and maintained by Frank Schröder through January, 2020. Since that date primary maintenance has been the responsibility of ENA and the great community of users.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Go Chassis

    Go Chassis

    A cloud native application framework for Go with rich eco-system

    Go-Chassis is a microservice framework for the rapid development of microservices in Go. it focuses on helping developer to deliver cloud-native applications more easily. The idea of the logo is, developers can recreate and customize their own "wheel"(a framework) by going chassis to accelerate the delivery of software. Powerful middleware "handler chain": powerful than "filter" or "interceptor". each handler in the chain is able to get the running result of the backward handler and your business logic. It is very useful in a variety of scenarios. Go Chassis is designed as a protocol-independent framework, any protocol is able to integrate with go chassis and leverage the same functions like load balancing, circuit breaker, rate limiting, and routing management, those functions are resilient to your service. Support Service center, kubernetes. fit both client side discovery and server side discovery pattern, and you can disable service discovery to use end to end communication.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Go MySQL Driver

    Go MySQL Driver

    MySQL driver for Go's (golang) database/sql package

    Lightweight and fast, native Go implementation. No C-bindings, just pure Go. Connections over TCP/IPv4, TCP/IPv6, Unix domain sockets or custom protocols. Automatic handling of broken connections, as well as automatic Connection Pooling (by database/sql package). Supports queries larger than 16MB. Full sql.RawBytes support. It provides intelligent LONG DATA handling in prepared statements. Secure LOAD DATA LOCAL INFILE support with file allowlisting and io.Reader support. Optional time.Time parsing, as well as optional placeholder interpolation. db.SetConnMaxLifetime() is required to ensure connections are closed by the driver safely before connection is closed by MySQL server, OS, or other middlewares. Since some middlewares close idle connections by 5 minutes, we recommend timeout shorter than 5 minutes. This setting helps load balancing and changing system variables too.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    OpenELB

    OpenELB

    Load Balancer Implementation for Kubernetes in Bare-Metal, Edge, etc.

    OpenELB is an open-source load balancer implementation designed for exposing the LoadBalancer type of Kubernetes services in bare metal, edge, and virtualization environments. In cloud-based Kubernetes clusters, Services are usually exposed by using load balancers provided by cloud vendors. However, cloud-based load balancers are unavailable in bare-metal or on-premise environments. OpenELB allows users to create LoadBalancer Services in bare-metal, edge, and virtualization environments for external access, and provides the same user experience as cloud-based load balancers.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Origin

    Origin

    Community Distribution of Kubernetes

    Origin, also known as OKD is the community distribution of Kubernetes that has been optimized for continuous application development and multi-tenant deployment. It adds developer and operations-centred tools to Kubernetes to speed up application development and simplify deployment, scaling, as well as long-term lifecycle maintenance. It also makes it easier to launch Kubernetes on any cloud or bare metal and run and update clusters, while providing all the necessary tools for creating successful containerized applications.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Seesaw v2

    Seesaw v2

    Seesaw v2 is a Linux Virtual Server based load balancing platform

    Seesaw is a software load balancer and traffic director focused on L3/L4 load balancing with high availability and operational simplicity. Built with production reliability in mind, it uses anycast and health-checking to steer traffic to healthy backends while avoiding single points of failure. It supports common load-balancing policies, NAT, and VIP management, and pairs with standard Linux networking primitives for predictable performance. A controller/worker architecture separates configuration and dataplane concerns, enabling safe rollouts and fast failover. Operators get tooling to define services declaratively and to observe the state of pools, backends, and routes. Seesaw aims to be understandable and operable by network and SRE teams who prefer transparent, Linux-native components over opaque appliances.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    automaxprocs

    automaxprocs

    Automatically set GOMAXPROCS to match Linux container CPU quota

    Automatically set GOMAXPROCS to match Linux container CPU quota. All APIs are finalized, and no breaking changes will be made in the 1.x series of releases. Users of semver-aware dependency management systems should pin automaxprocs to ^1. When GOMAXPROCS is increased above the CPU quota, we see P50 decrease slightly but see significant increases to P99. We also see that the total RPS handled also decreases. Data was measured from Uber's internal load balancer. We ran the load balancer with 200% CPU quota (i.e., 2 cores).
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    balancer

    balancer

    A go library that implements load balancing algorithms

    balancer is a layer 7 load balancer that supports http and https, and it is also a go library that implements load-balancing algorithms.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next