spring-cloud / spring-cloud/spring-cloud-gateway

Zone Affinity not working

Open
#2,840 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

waiting-for-triage
Dominant language
Java
Stars
4.9k
Forks
3.5k
Avg merge
20h 57m
Merged PRs (30d)
8

Description

Describe the bug
Zone affinity works in the same zone but when it doesn't refer to another zone when first instance is down.

 <java.version>11</java.version>
  <spring-cloud.version>2021.0.5</spring-cloud.version>
  <spring.boot.version>2.7.6</spring.boot.version>

bootstrap.yml
eureka:
  client:
    region: default
    registryFetchIntervalSeconds: 60
    register-with-eureka: false
    fetch-registry: false
    serviceUrl:
      defaultZone: http://******:*****!@localhost:14973/eureka
  instance:
    healthCheckUrl: http://localhost:14974/actuator/health
    homePageUrl: http://localhost:14974/
    hostname: localhost
    nonSecurePortEnabled: true
    securePortEnabled: false
    statusPageUrl: http://localhost:14974/actuator/info

It used to work with other services with older version of spring cloud and java but since we have migrated, this is the issue we are able to see

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the bootstrap.yml configuration and the reported Java 11, Spring Boot 2.7.6, and Spring Cloud 2021.0.5 versions. Reproduce the zone-affinity behavior while the first instance is down, then compare it with the older working service versions mentioned in the report. Done means requests fail over to an instance in another zone as expected.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring, spring-boot
Domain
api, backend, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.