# yyyar/gobetween

:cloud: Modern & minimalistic load balancer for the Сloud era

Repository: https://github.com/yyyar/gobetween
Canonical: https://ross.abutalabs.com/products/gobetween
Homepage: http://gobetween.io
Language: Go
License: NOASSERTION
License Family: other
Topics: proxy-server, load-balancer, discovery, docker, consul, srv, cloud, tcp, tls, udp, tcp-proxy, udp-proxy, tls-proxy, sni, proxy, backend, lxd, letsencrypt, golang, go
Last push: 2025-08-16T14:46:57+00:00

## Health v2 (maintenance only)
Score: 39/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 37, release rhythm 8, longevity 100
- inputs: {"age_days": 3740, "days_push": 382, "days_rel": 562, "gap_med": null, "n_releases_24m": 1}
- flags: prerelease_only, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1986, forks 218 (observed 2026-08-28T04:06:02.760566+00:00)

## What it is
gobetween is a modern, minimalistic L4 load balancer and reverse proxy written in Go, distributed as a single binary. It supports TCP, TLS (with termination and ACME/Let's Encrypt), and UDP proxying, with dynamic backend discovery via Docker, Consul, DNS SRV, HTTP JSON, exec scripts, and more.

## Use cases
- load balance TCP traffic across backends
- terminate TLS with automatic Let's Encrypt certificates
- proxy UDP traffic with virtual sessions
- discover backends dynamically from Docker Swarm or Consul
- manage load balancer servers via a REST API
- health-check backends with TCP pings or custom scripts

## When to choose
- you need a lightweight single-binary L4 load balancer
- your backends change dynamically in Docker, Swarm, or Consul environments
- you want TLS termination with ACME support without a heavy proxy
- you need REST API-driven load balancer management

## When to avoid
- you need L7/HTTP application-layer routing or advanced features like retries or circuit breaking
- you want a large community and active development (project is in maintenance mode)
- you need built-in service mesh or observability features

## Facets
- artifact type: service
- maturity: maintenance
- function: proxy, load-testing, http-server, networking
- domain: networking, cloud-computing, infrastructure-as-code
- platform: windows, go, cross-platform
- tags: l4-load-balancer, reverse-proxy, tcp-proxy, udp-proxy, tls-termination, backend-discovery, consul, docker-swarm, rest-api, single-binary, devops, linux, macos, docker

## Member repositories
- yyyar/gobetween (main) score 39

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:02.760566+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:03:07.567132+00:00, confidence not recorded.
  - readme: https://github.com/yyyar/gobetween (fetched 2026-08-28T04:06:02.760566+00:00, sha a68adac157a5)
  - homepage: http://gobetween.io (fetched 2026-08-29T10:42:57.482741+00:00, sha 29a39c7b23c5)
  - site_page: https://gobetween.io/documentation.html (fetched 2026-08-29T10:42:57.485293+00:00, sha 506ef19e4201)
  - site_page: https://gobetween.io/downloads.html (fetched 2026-08-29T10:42:57.487028+00:00, sha b4faa0511c9d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
