Skip to content

Commit

Permalink
Add ClientSideWeightedRoundRobin LB Policy. (#35905)
Browse files Browse the repository at this point in the history
Commit Message:

- Add `ClientSideWeightedRoundRobinLoadBalancer`.
  - Attach `ClientSideHostLbPolicyData` to each `Host`.
- Add `OrcaLoadReportCallbacks` callback to each `LoadBalancerContext`.
- Calculate weights in `Host::ClientSideHostLbPolicyData` based on
OrcaLoadReport.
- Periodically update `Host::weight` for load balancing using calculated
weights.
- Add `host` reference to `OrcaLoadReportCallbacks::onOrcaLoadReport`
callback.

Risk Level: low
Testing: `bazel test
//test/extensions/load_balancing_policies/client_side_weighted_round_robin/...`
Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: n/a

#34777

---------

Signed-off-by: Misha Efimov <[email protected]>

Mirrored from https://github.com/envoyproxy/envoy @ 89d485de2bdf741e4c010eccad9539db18e61202
  • Loading branch information
update-envoy[bot] committed Sep 25, 2024
1 parent def3553 commit c7ef8db
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 1 deletion.
1 change: 1 addition & 0 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,7 @@ proto_library(
"//envoy/extensions/internal_redirect/previous_routes/v3:pkg",
"//envoy/extensions/internal_redirect/safe_cross_scheme/v3:pkg",
"//envoy/extensions/key_value/file_based/v3:pkg",
"//envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3:pkg",
"//envoy/extensions/load_balancing_policies/cluster_provided/v3:pkg",
"//envoy/extensions/load_balancing_policies/common/v3:pkg",
"//envoy/extensions/load_balancing_policies/least_request/v3:pkg",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/loa
option (udpa.annotations.file_status).package_version_status = ACTIVE;

// [#protodoc-title: Client-Side Weighted Round Robin Load Balancing Policy]
// [#not-implemented-hide:]
// [#extension: envoy.load_balancing_policies.client_side_weighted_round_robin]

// Configuration for the client_side_weighted_round_robin LB policy.
//
Expand Down

0 comments on commit c7ef8db

Please sign in to comment.