您的位置:首页 > 编程语言 > Java开发

Spring Cloud系列教程三 :声明式服务调用Spring Cloud Fegin(F版)

2020-02-02 07:07 731 查看

介绍

Feign集成了Ribbon,让客户端具有负载均衡的能力,同时简化了开发

github地址:https://github.com/erlieStar/spring-cloud-learning

1.项目配置如下
pom.xml

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

application.yaml

server:
port: 9001

spring:
application:
name: consumer-feign

eureka:
client:
service-url:
defaultZone: http://localhost:7001/eureka

2.启动类加上@EnableFeignClients注解开启Feign的功能
3.定义接口,通过@FeignClient(服务名)来指定调用哪个服务

@RestController
@EnableEurekaClient
@EnableFeignClients
@SpringBootApplication
public class ConsumerFeign {

public static void main(String[] args) {
SpringApplication.run(ConsumerFeign.class);
}

@Autowired
private SimpleClient simpleClient;

@FeignClient(value = "producer-simple")
public interface SimpleClient {
@RequestMapping("hello")
String hello(@RequestParam String name);
}

@RequestMapping("hello")
public String hello(@RequestParam String name) {
return simpleClient.hello(name);
}
}

启动eureka-service(spring-cloud-eureka)
接着启动2个producer-simple(spring-cloud-ribbon)
初始端口为8001,启动一个实例后,修改端口为8002,再启动一个实例

访问http://localhost:9001/hello?name=xiaoshi

交替显示

hello xiaoshi, I am from port: 8001
hello xiaoshi, I am from port: 8002

欢迎关注

参考博客

[1]https://www.fangzhipeng.com/springcloud/2018/08/03/sc-f3-feign.html

  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
Java识堂 博客专家 发布了377 篇原创文章 · 获赞 1241 · 访问量 72万+ 他的留言板 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐