Go · reverse proxy · distributed systems

Traffic control for services that remember.

A multi-core Go load balancer for stateful and stateless backends. It routes requests, moves owned state through a fenced handoff, and sheds excess work before a slow service becomes a system-wide problem.

  • Gosingle process
  • 7routing policies
  • Redisshared coordination
Request path policy selected per route
Request routing through the load balancer A client request passes through validation and a route policy, then reaches one of three healthy backend instances. A separate state transfer path coordinates source and target instances through Redis. CLIENT HTTP request LOAD BALANCER validate · select · proxy /api/orders/* INSTANCE A healthy · serving INSTANCE B healthy · serving INSTANCE C draining · no new work REDIS ownership + handoff state HEALTH CHECKS backend pool
01 Routes are explicit. State moves only after the target restores it and the owner epoch advances.
Built around the hard parts

Routing is the beginning.
Correctness is the feature.

System shape

One edge. Several ways to stay correct.

Route policy is selected by the longest matching prefix. Health, ownership, retries, cache behavior, and admission remain separate decisions with explicit boundaries.

Safe state movement

A handoff is a protocol, not a redirect.

Changing a route is easy. Moving live state without losing ownership takes a sequence with durable checkpoints.

    Read the handoff contract

    Engineering decisions

    Make failure behavior visible.

    The system favors bounded work and explicit recovery over hidden retries or automatic reassignment.

    Core stack

      Verification

      Test the failure path, too.

      Acceptance work covers routing behavior, Redis-backed coordination, bounded queues, race conditions, recovery, and the dashboard’s live path.

      View continuous integration

      Explore the project

      See how the pieces behave together.

      Browse the running dashboard, run fixture traffic, or trace the implementation in the repository.