SpringCloud---(6)Feign调用服务

上一篇:SpringCloud—(5)Ribbon负载均衡

  Feign是一个声明式的web服务客户端,它让微服务之间的调用如何Controller调用Service一样更加简洁。Spring Cloud集成Ribbon和Eureka以在使用Feign时提供负载均衡的http客户端。

  调用微服务的两种方式:
  1. Robbin 通过微服务名字调用
  2. Feign 通过注解和接口进行服务调用

1.使用Feign

1)引入Feign依赖

<dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-feign</artifactId>
      <version>1.4.7.RELEASE</version>
    </dependency>

2)在服务接口上添加注册@FeignClient()

@FeignClient(value = "微服务的名字")
@Component
public interface OrderClient {

	@PostMapping("/addOrder")
	public boolean addOrder();

}
@Controller
@RequestMapping("/Order")
public class OrderController {

	@Autowired
	private OrderClient orderClient;

	@GetMapping("/addOrder")
	public boolean addOrder(){
		return orderClient.addOrder();
	}
}

  FeignRibbon是两种不同的服务调用方式,而Ribbon使用了RestTemplate使得服务调用更加倾向restFul风格FeignRibbon的基础上做了进一步封装,使得服务调用更加倾向面向接口编程,其服务调用还是由Eureka来实现。

下一篇:SpringCloud—(7)Hystrix断路器

发布了79 篇原创文章 · 获赞 42 · 访问量 7912

猜你喜欢

转载自blog.csdn.net/qq_43655835/article/details/103807310
今日推荐