亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring?Feign超時如何設置

發布時間:2023-03-17 13:54:29 來源:億速云 閱讀:112 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Spring Feign超時如何設置”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Spring Feign超時如何設置”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

Feign其他功能-超時設置

  • Feign 底層依賴于 Ribbon 實現負載均衡和遠程調用。

  • Ribbon默認1秒超時。

超時配置:

ribbon:

ConnectTimeout: 1000 #連接超時時間,毫秒

ReadTimeout: 1000 #邏輯處理超時時間,毫秒

Spring?Feign超時如何設置

在feign-consumer中設置超時時間

server:
  port: 9000

eureka:
  instance:
    hostname: localhost # 主機名
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka
spring:
  application:
    name: feign-consumer # 設置當前應用的名稱。將來會在eureka中Application顯示。將來需要使用該名稱來獲取路徑

#設置Ribbon的超時時間
ribbon:
  ConnectTimeout: 1000 #鏈接超時時間,默認1s
  ReadTimeout: 3000 #邏輯處理的超時時間 默認1s

provider超時2s測試

Goods goods = goodsservice.findOne(id);
//當前現場睡眠2秒
try {
    Thread.sleep( millis: 2000);
}catch (InterruptedException e) {
    e.printStackTrace(); //java.net.SocketTimeoutException: Read timed out
}
goods.setTitle(goods.getTitle() + ":" + port);//將端口號,設置

Feign其他功能-日志記錄

Feign 只能記錄 debug 級別的日志信息。

logging: 
     level:   
          com.itheima: debug //包名

定義Feign日志級別Bean

@Bean
Logger.Level feignLoggerLevel() {    
		return Logger.Level.FULL;
		}

啟用該Bean:

@FeignClient(configuration = XxxConfig.class)

Spring?Feign超時如何設置

修改consumer

#設置當前的日志級別 debug,feign 只支持記錄debug級別的日志
logging:
  level:
    com.itheima: debug

package com.itheima.consumer.config;
import feign.Logger;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class FeignLogConfig {
    /**
     * NONE, 不記錄
     * BASIC, 記錄基本的請求行,響應狀態碼數據
     * HEADERS, 記錄基本的請求行,響應狀態碼數據,記錄響應頭信息
     * FULL 記錄完整的請求,響應數據
     * @return
     */
    @Bean
    public Logger.Level level(){
        return Logger.Level.FULL;
    }
}
package com.itheima.consumer.feign;
import com.itheima.consumer.config.FeignLogConfig;
import com.itheima.consumer.domain.Goods;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
/**
 *  feign聲明式接口 發錢遠程調用的
 *   String url = "http://FEIGN-PROVIDER/goods/findOne/"+id;
 *         // 3. 調用方法
 *         Goods goods = restTemplate.getForObject(url, Goods.class);
 *
 *  1 定義接口
 *  2 接口上添加注解 @FeignClient 設置value屬性為服務提供的 應用名稱
 *  3 編寫調用接口,接口的聲明規則和提供方接口保持一致
 *  4 注入該接口對象,調用接口方法完成遠程調用
 */
@FeignClient(value = "FEIGN-PROVIDER",configuration = FeignLogConfig.class)
public interface GoodsFeignClient {
    @GetMapping("/goods/findOne/{id}")
    public Goods findGoodsById(@PathVariable("id") int id);
}

讀到這里,這篇“Spring Feign超時如何設置”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

郴州市| 临朐县| 拉萨市| 法库县| 临汾市| 江川县| 平和县| 伽师县| 金川县| 扎兰屯市| 安岳县| 宝清县| 堆龙德庆县| 长春市| 叙永县| 大港区| 绥中县| 新野县| 桃江县| 武宣县| 云龙县| 得荣县| 金华市| 偃师市| 临城县| 西林县| 花垣县| 滨海县| 东丽区| 恭城| 久治县| 长兴县| 大渡口区| 泽库县| 大竹县| 漯河市| 离岛区| 夏河县| 那曲县| 丹棱县| 眉山市|