此刻不是此刻 2022-05-04 14:52 采纳率: 35.3%
浏览 63
已结题

刚学习spring cloud,想问下openfeign是如何能够找到注册中心

刚开始学习spring cloud,想问下openfeign是如何能够找到注册中心的
注册中心以Eureka为例,在某个微服务上引入openfeign后和eureka-client后,这两者之间是如何联动,能够通过@FeignClient注解找到eureka的注册中心,从注册中心上寻找到服务后进行远程调用的,明明代码里也没有使用什么注解之类的东西进行关联,求指教!

img

img

img

  • 写回答

2条回答 默认 最新

  • a1767028198 2022-05-04 15:22
    关注

    你确定刚学怎么用的时候,你就要知道怎么来的吗????

    入口在EnableFeignClients,核心在import(FeignClientsRegistrar)(自行百度为啥启动会回调到这个类)

    img

    FeignClientsRegistrar实现了ImportBeanDefinitionRegistrar

    img

    ImportBeanDefinitionRegistrar的回掉方法中,看到明显的注册feignclient api,registerFeignClients

    img

    最终走到org.springframework.cloud.openfeign.FeignClientsRegistrar#registerFeignClient方法,
    看到FeignClientFactoryBean你就成功一半了

    img

    FeignClientFactoryBean实现了FactoryBean,容器创建bean回调会走到getObject方法,

    img

    看到loadBalance就知道为啥会负载均衡了吧
    ps:当你FeignClient注解写了url的时候,就不会生成负载均衡客户端了,换言之负载均衡就会失效了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月20日
  • 已采纳回答 5月12日
  • 创建了问题 5月4日

悬赏问题

  • ¥15 ssh登录页面的问题
  • ¥60 渗透一个指定银行app,拿到客户信息,需要什么级别
  • ¥50 关于在matlab上对曲柄摇杆机构上一点的运动学仿真
  • ¥15 jetson nano
  • ¥15 :app:debugCompileClasspath'.
  • ¥15 windows c++内嵌qt出现数据转换问题。
  • ¥20 公众号如何实现点击超链接后自动发送文字
  • ¥15 用php隐藏类名和增加类名
  • ¥15 算法设计与分析课程的提问
  • ¥15 用MATLAB汇总拟合图