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

feat: Multi-AZ Failover LoadBalancing #1212

Open
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

kworkbee
Copy link

@kworkbee kworkbee commented Mar 7, 2023

Description

In a multi-AZ environment, a loadbalancer looks at ServiceInstances of the primary zone first, but when the instances of that are not connected correctly, then it looks at the instances of the secondary zones.

What's changed

spring.cloud.loadbalancer.configurations: multi-az-failover : It enables MultiAZFailoverServiceInstanceListSupplier.
spring.cloud.loadbalancer.secondary-zones: A,B,C : Secondary Zones.

To use this feature, Caching must be needed to record ServiceInstances into a cache for remembering connection-failed instances. MultiAZFailoverServiceInstanceListSupplier will calculate available instances by comparing those in cache.

Issues

Related to #1203

Copy link
Member

@spencergibb spencergibb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A longer review will still be needed.

@kworkbee kworkbee force-pushed the loadbalancer/multi-az-failover branch from fb5a2fb to 481305c Compare March 7, 2023 05:41
@kworkbee
Copy link
Author

Any progress with this? @spencergibb

@spencergibb
Copy link
Member

No. Please be patient

@spencergibb
Copy link
Member

It's a big change. The earliest it would be merged would be when we start the 2023.0 release train (4.1.0 of spring cloud commons). We won't even start that until June.

@kworkbee
Copy link
Author

Thanks for your answer. I'll consider this, and if any corrections needed please feel free to mention me.

@kworkbee
Copy link
Author

kworkbee commented Mar 19, 2023

Updated feature: Instances will be added into a cache only when connection fails or 5xx error occurs. 4xx Errors will not be triggered.

- assertNull -> assertThat.isNull
@kworkbee
Copy link
Author

kworkbee commented Jul 9, 2024

Hi, @spencergibb @OlgaMaciaszek Still needs to be reviewed?

@OlgaMaciaszek
Copy link
Collaborator

Hi @kworkbee, sorry, this feature didn't make it to the planned backlog for 2023.0.x. Will consider it for 2024.0.x and get back to you.

@OlgaMaciaszek OlgaMaciaszek self-assigned this Sep 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants