1

We have a spring boot application with HTTP2 jetty client which we have annotated with @LoadBalanced with springboot version 2.3.x and spring-cloud-kubernetes-loadbalancer version 1.1.6.RELEASE. On sending traffic, HTTP2 persistent connections were properly created. And on scaling the server it was equally distributing the connections as well as traffic over those connections.

Working dependency are as follows:

compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-kubernetes-all', version: "1.1.6.RELEASE"

compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-kubernetes-loadbalancer', version: "1.1.6.RELEASE"

Later on upgrading spring boot version to 2.4.x and correspondingly migrating to spring-cloud-starter-kubernetes-fabric8-loadbalancer 2.0.3 (since that is the right version compatible with springboot 2.4.x as per the Release train Spring Boot compatibility ), we are not seeing equal number of HTTP2 connections to scaled out servers.

Not working dependencies are as follows:

compile 'org.springframework.cloud:spring-cloud-starter-kubernetes-fabric8-all'

compile 'org.springframework.cloud:spring-cloud-starter-kubernetes-fabric8-loadbalancer'

What can be the possible issue here?

EDIT: java version "15" 2020-09-15 Java(TM) SE Runtime Environment (build 15+36-1562) Java HotSpot(TM) 64-Bit Server VM (build 15+36-1562, mixed mode, sharing)

And jetty client version is

compile 'org.eclipse.jetty:jetty-reactive-httpclient:1.1.8'
compile 'org.eclipse.jetty:jetty-client:9.4.40.v20210413',
compile 'org.eclipse.jetty.http2:http2-client:9.4.40.v20210413'
compile 'org.eclipse.jetty:jetty-alpn-java-client:9.4.40.v20210413'

These 2 are common for both working and non working cases

  • Edit your question and add ... What specific versions of Java are you using? And what are the specific jetty-client (and alpn) versions that were resolved and in use between the working and non-working environments? – Joakim Erdfelt Jul 14 '21 at 15:57

0 Answers0