Load balancers

A managed load balancer for all your servers

Share traffic across your servers with health checks, free certificates and live metrics. We manage HAProxy, so you can focus on your app.

Automatic failover

Send traffic to healthy servers automatically

Health checks remove servers that stop responding from rotation. Traffic goes to the remaining healthy servers, and recovered servers rejoin automatically.

All three servers pass their health checks. Server 3 stops answering its health check. It leaves the rotation. Servers 1 and 2 take over its traffic. Server 3 passes again and gets its share back.

What's included

Everything you'd otherwise set up and maintain yourself

  • HTTP, HTTPS and TCP

    Listen on any port and forward to another, for websites or any other TCP service.

  • Health checks

    Every target is checked. A failing one leaves the rotation until it recovers.

  • Free certificates

    Let's Encrypt certificates are requested and renewed for you. Prefer your own? Upload them.

  • Live metrics and request logs

    Requests per second, status codes, connections and traffic, plus the recent request log.

  • Redirects, sticky sessions, PROXY protocol

    Send HTTP to HTTPS, keep a visitor on the same server, and pass the client's address on to your servers.

  • Your servers or any address

    Add your own servers or any IPv4 or IPv6 address as a target, and decide how much traffic each one gets.

Plans go by capacity: services, targets, simultaneous connections and included traffic, so you pay for the size you need. Compare the available resources and choose a plan for your workload.

API

Automate your load balancer

Targets, listeners, certificates and metrics are all in the API. This token is limited to load balancers.

API reference
Add a target, read the metrics bash
export FAASTIC_TOKEN=fst_…        # read/write, area: load_balancers
export ORG=…  LB=…  SERVER=…

# Put one of your servers behind the load balancer
curl -s -X POST "https://api.faastic.com/v1/orgs/$ORG/services/$LB/lb/targets" \
  -H "Authorization: Bearer $FAASTIC_TOKEN" -H "Content-Type: application/json" \
  -d "{\"kind\":\"server\",\"serviceId\":\"$SERVER\"}"

# Requests per second, status codes, connections and traffic
curl -s "https://api.faastic.com/v1/orgs/$ORG/services/$LB/lb/metrics" \
  -H "Authorization: Bearer $FAASTIC_TOKEN"

Frequently asked questions

What does a load balancer do?

It gives your website or app one public address and spreads incoming requests over several servers. If one server fails, the others take over, so your service stays online.

Are SSL certificates included?

Yes. Let's Encrypt certificates are requested and renewed for you at no extra cost. You can also upload your own certificates.

Does it only work for websites?

No. Next to HTTP and HTTPS, the load balancer handles TCP, so it works for other services that use TCP too.

Can I balance servers that aren't hosted at Faastic?

Yes. A target can be one of your Faastic servers or any IPv4 or IPv6 address.

Add it to your stack

Order load balancers in the dashboard, next to your servers, on the same network and the same invoice.