zoukankan      html  css  js  c++  java
  • 什么是 Netflix Feign?它的优点是什么?

    Feign 是受到 Retrofit,JAXRS-2.0  WebSocket 启发的 java 客户端联编程序

    Feign 的第一个目标是将约束分母的复杂性统一到 http apis,而不考虑其稳定性

     employee-consumer 的例子中我们使用了 employee-producer 使用 REST

    模板公开的 REST 服务

    但是我们必须编写大量代码才能执行以下步骤 

    1、使用功能区进行负载平衡

    2、获取服务实例然后获取基本 URL。

    3、利用 REST 模板来使用服务前面的代码如下 

    @Controller

    public class ConsumerControllerClient {

    @Autowired

    private LoadBalancerClient loadBalancer;

    public void getEmployee() throws RestClientException, IOException {

    ServiceInstance

    serviceInstance=loadBalancer.choose("employee-producer");

    System.out.println(serviceInstance.getUri());

    String baseUrl=serviceInstance.getUri().toString();

    baseUrl=baseUrl+"/employee";

    RestTemplate restTemplate = new RestTemplate();

    ResponseEntity<String> response=null;

    try{

    response=restTemplate.exchange(baseUrl,

    HttpMethod.GET, getHeaders(),String.class);

    }catch (Exception ex)

    {

    System.out.println(ex);

    }

    System.out.println(response.getBody());

    之前的代码有像 NullPointer 这样的例外的机会并不是最优的我们将看到如 

    何使用 Netflix Feign 使呼叫变得更加轻松和清洁如果 Netflix Ribbon 依赖关 

    系也在类路径中那么 Feign 默认也会负责负载平衡

    Java Program!
  • 相关阅读:
    一篇文章搞明白CORS跨域
    我从来不理解JavaScript闭包,直到有人这样向我解释它...
    将博客搬至CSDN
    Spring Boot缓存源码分析
    网站技术架构
    在springboot中使用Mybatis Generator的两种方式
    官方文档Core Technologies
    Java诊断工具Arthas
    Intellij IDEA 修改代码后自动编译更新
    TabHost选项卡的实现(二):使用Fragment实现
  • 原文地址:https://www.cnblogs.com/programb/p/12996030.html
Copyright © 2011-2022 走看看