Load balancing policies
Extendable load balancing policies could be configured for each cluster by load balancer policy. And the developer can implement a custom load balancing policy and configured it.
See built-in load balancing policies by APIs.
Enum based load balancing policies will be suupported for backward compatibility and marked as deprecated. The new extendable load balancing policies should be used as a priority if the related policies are implemented.
Use random load balancing policy as an example:
name: example_cluster
type: STRICT_DNS
connect_timeout: 0.25s
load_assignment:
cluster_name: example_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: example.com
port_value: 80
load_balancing_policy:
policies:
- typed_extension_config:
name: envoy.load_balancing_policies.random
typed_config:
"@type": type.googleapis.com/envoy.extensions.load_balancing_policies.random.v3.Random