Spring Cloud 学习总结之Feign实现服务间的调用!

https://blog.csdn.net/chengqiuming/article/details/80713471

上面的连接讲的很好!

我讲下在项目应该怎么去使用它

你那个项目需要调用其他服务加载pom文件添加如下

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring‐cloud‐starter‐openfeign</artifactId>
</dependency>

启动类添加如下注解

@EnableDiscoveryClient  
@EnableFeignClients

上面2个注解的作用 就是配合一起用的,在需要调用其他服务的启动类上面启动这个!

 

在项目中创建一个client包

创建一个接口类和实现类

接口的具体操作如下

@FeignClient 注解的作用于指定从哪个服务中调用功能,注意里面的名称与被调用的服务名称保存一致,不能有下划线。

但是有几个点要记录下,比如BaseClienr接口创建后然后就是在你需要调用啥服务,你就直接把他的路径(这个路径包含接口类上面的那个RequestMapper)和方法名参赛全部

copy下来,要主要的一点是@PathVariable("labelid")一定要这么写不然就是找不到。

 

再就是怎么在当前的控制层调用,远程服务的接口

 

注入 client包下的接口

实现调用,这里要讲下,BaseClinet接口,需要写一个@Component注解要不写一个实现类,不然会有红线,但是也不影响使用!

 

 

负载均衡:

spring 框架本身就做了:

比如你在自己的其中一个服务开启三次,每开启一个结束后修改端口再开启一个,然后就是修改一个查询语句,在里面写一条输出语句内容随便!只要可以区分第一个开启的和第二个第三个开启的区别就ok!

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章