openFeign ,nacos 注册中心的原理和使用

1 openFeign的使用

增加@feignClient 注解

在启动类添加enableFeignClient注解

spirng Boot 启动扫描带有@feignClient注解的类 并生成动态代理实现类 放入IOC 容器

一般在开发中都会吧FeignClient 单独提取一个模块

使用的时候直接通过Object.getMethod()

通过动态代理的方式执行invoke 方法 然后再调用loadbancer 的choose方法 去发现并负载服务并拼接完整的url 服务,通

过httpConnection 去发送链接

2 nacos 注册中心的使用

导包 starter-nacosconfig

springBoot 新版本还需要导入 bootstrap包

在项目创建 bootStrap.yaml (在springBoot 中 加载配置文件的顺序 bootstrap>application>自定义)

在bootstrap 中配置nacos 注册中心地址 并指定配置文件名称

3 nacos 实现原理

在springboot 中 所有的配置文件都会存储在environment 的对象

启动项目的时候会装配带有@Value 的字段的属性,通过反射机制使用environment。getproperties()方法获取值并set

当nacos 配置文件有修改时 通过发布事件触发,主应用会订阅对应的配置文件,会销毁bean并重新创建bean (默认不启动热更新)

请登录后发表评论