Spring Cloud service Look up error: Load balancer does not have available server for client
Upon further investigation, I found that if eureka.client.fetchRegistry
is false, the various shuffle methods in com.netflix.discovery.shared.Applications
are not called and hence Applications.shuffleVirtualHostNameMap
is never populated. This map is used later for look up in the method Applications.getInstancesByVirtualHostName
that then fails.
I don't understand why a client would be forced to download the registry. They may choose to make the network trip each time or get delta when necessary.
I've opened an issue on Github for this. Will wait for their response.