Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add a round robin grpc balancer #554

Merged
merged 2 commits into from
May 1, 2024
Merged

add a round robin grpc balancer #554

merged 2 commits into from
May 1, 2024

Conversation

mrahs
Copy link
Collaborator

@mrahs mrahs commented Apr 22, 2024

This replaces the current load balancer which was copied over from the gcp repo which uses experimental APIs from grpc-go.

Depending on experimental APIs marks the SDK as experimental as well. It also complicates importing the SDK to google3 where everything must be compatbile at head.

This major difference between this simple implementation and the existing one is the maximum number of streams allowed on a single connection.
The existing balancer limits streams to 3 by default and allows configuring that limit.
The new simpler implementation does not enforce any limit.

I have tested the simple balancer by building chromium and android with and without it enabled. I observed no difference in build latency.

This replaces the current load balancer which was copied over from the
gcp repo which uses experimental APIs from grpc-go.

Depending on experimental APIs marks the SDK as experimental as well.
It also complicates importing the SDK to google3 where everything must
be compatbile at head.

This major difference between this simple implementation and the
existing one is the maximum number of streams allowed on a single
connection.
The existing balancer limits streams to 3 by default and allows
configuring that limit.
The new simpler implementation does not enforce any limit.

I have tested the simple balancer by building chromium and android with
and without it enabled. I observed no difference in build latency.
This replaces the current load balancer which was copied over from
the gcp repo which uses experimental APIs from grpc-go.

Depending on experimental APIs marks the SDK as experimental as well.
It also complicates importing the SDK to google3 where everything
must be compatbile at head.

This major difference between this simple implementation and the existing
one is the maximum number of streams allowed on a single connection.
The existing balancer limits streams to 3 by default and allows
configuring that limit. The new simpler implementation
does not enforce any limit.

I have tested the simple balancer by building chromium and android
with and without it enabled. I observed no difference in build latency.
@mrahs mrahs merged commit faba519 into bazelbuild:master May 1, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants