com.netflix.client.ClientException: Load balancer does not have available server for client: XXX-XXX-XXX


問題描述

  • 再order服務中調用goods的服務(order遠程調用)
  • 使用nacos作為注冊中心和配置中心,再使用openfeign作為遠程調用

消費者:server-fish-order
生產者:server-fish-goods

報錯:java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have available server for client: SERVER-FISH-GOODS

  • 意思是ribbon負載均衡器沒有找到為客戶端提供可用的服務器

  • 但是在nacos配置中心是可以發現兩個服務都被注冊進來了

解決

  • 發現goods模塊在服務名使用了小寫

  • 但是在配置@FeignClient()使用了大寫

  • 可能是ribbon在進行負載均衡策略的時候沒有辦法找到服務名(區分大小寫)

  • 將@FeihnClient()的value屬性更改成和服務名一致,並重啟服務

總結

  • 配置@FeihnClient(value="")的value屬性與服務名spring.application.name大小寫一致
  • 先重啟生產者server-fish-goods,再重啟消費者server-fish-order


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM