Skip to content

dntam00/grpc-loadbalancing

Repository files navigation

gRPC load balancing

This repository includes demo source code and testing for series gRPC load balancing in this blog: https://notes-ngtam.pages.dev/posts/grpc-load-balancer

  • HAProxy as load balancer.
  • Service mesh in K8s with Istio and Envoy.
  • Lookaside load balancing with xDS Envoy.
  • Headless service in K8s.

k3d

I use k3d to run k3s in local machine.

After running, verify cluster with command k3d cluster list

NAME          SERVERS   AGENTS   LOADBALANCER
local         1/1       2/2      true

If you have multiple cluster, you could switch between them with command kubectl config use-context k3d-<cluster_name>, and verify by kubectl config current-context.

k3d run a container as docker registry, so please make sure the port mapping to host machine is correct.

go task

I use go task to group multiple commands in one alias.

proto buf

Run command to generate gRPC code

    protoc --go_out=. --go-grpc_out=. ./model/service.proto

About

gRPC load balancing technique

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published