激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring Cloud-Feign服務調用的問題及處理方法

Spring Cloud-Feign服務調用的問題及處理方法

2022-02-17 15:24人形bug制造機9527 Java教程

Feign 是一個聲明式的 REST 客戶端,它用了基于接口的注解方式,很方便實現客戶端配置。接下來通過本文給大家介紹Spring Cloud-Feign服務調用,需要的朋友可以參考下

概述:

• Feign 是一個聲明式的 REST 客戶端,它用了基于接口的注解方式,很方便實現客戶端配置。
• Feign 最初由 Netflix 公司提供,但不支持SpringMVC注解,后由 SpringCloud 對其封裝,支持了SpringMVC注
解,讓使用者更易于接受

Spring Cloud-Feign服務調用的問題及處理方法

首先在調用者的pom中加入如下坐標

?
1
2
3
4
5
<!--feign-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

然后在啟動類上添加注解
@EnableFeignClients以啟用Feign
最后創建一個接口,方法參數映射全部按照我們要調用的那個controller寫一個
value的值是應用名稱

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
 *
 * feign聲明式接口。發起遠程調用的。
 *
 String url = "http://eureka-provider/provider/getUser/"+id;
 User user = restTemplate.getForObject(url, User.class);
 *
 * 1. 定義接口
 * 2. 接口上添加注解 @FeignClient,設置value屬性為 服務提供者的 應用名稱
 * 3. 編寫調用接口,接口的聲明規則 和 提供方接口保持一致。
 * 4. 注入該接口對象,調用接口方法完成遠程調用
 */
@FeignClient(value = "eureka-provider")
@RequestMapping("/provider")
public interface FeignProviderUserController {
 
    @GetMapping("/getUser/{id}")
    public ResponseEntity<User> getUser(@PathVariable("id")String id);
}

然后我們將這個接口注入到我們要使用的地方,就可以直接調用那個方法了

?
1
2
3
4
5
6
7
8
9
10
11
/**
 * Feign形式的服務調用
 * @param id
 * @return
 */
@GetMapping("/FeignClientGetUser/{id}")
public ResponseEntity<User> FeignClientGetUser(@PathVariable("id") String id){
    System.out.println("進入");
    ResponseEntity<User> user = feignConsumerUserClient.getUser(id);
    return user;
}

現在存在一個問題,就是按照應用名稱調用的時候。取到的對象name是正確的,但是url卻是http://+name,并不是我們想要的http://+host+port+uri,
正在解決…
結果:{好吧需要ribbon}

Spring Cloud-Feign服務調用的問題及處理方法

Feign超時配置

Feign 底層依賴于 Ribbon 實現負載均衡和遠程調用。
• Ribbon默認1秒超時。
• 超時配置:
在調用者的配置文件中加入

?
1
2
3
4
# 設置Ribbon的超時時間
ribbon:
  ConnectTimeout: 1000 # 連接超時時間 默認1s  默認單位毫秒
  ReadTimeout: 3000 # 邏輯處理的超時時間 默認1s 默認單位毫秒

Feign日志記錄

?
1
2
logging:
  level: debug #配置日志級別

如果報錯Failed to bind properties under 'logging.level',是因為springboot2.0.0以后的版本只支持如下這種配置,需要指定名稱

?
1
2
3
logging:
  level:
    root: info #配置日志級別

到此這篇關于Spring Cloud-Feign服務調用的文章就介紹到這了,更多相關Spring Cloud-Feign服務調用內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/m0_49194578/article/details/120723184

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美黄色片免费看 | 成人爱爱电影 | 爱操视频| 久久久一区二区三区四区 | 91短视频版高清在线观看免费 | 免费国产 | 国产成年人视频 | www.91在线观看 | 黄色片网站免费观看 | hd性videos意大利复古 | 欧美成人一区二区三区电影 | 亚洲成人在线免费观看 | 亚洲成人中文字幕在线 | 操嫩草 | 女人裸体让男人桶全过程 | 亚洲成人福利网站 | 天天操天天插天天干 | 亚洲电影在线观看高清免费 | 一级一级一级毛片 | www.精品一区 | 男人的天堂色偷偷 | 久久久久久久久久久久久九 | 国产黄色免费网站 | 精品亚洲成a人在线观看 | 日本aⅴ在线| 色婷婷一区二区三区 | 欧美久久一区 | 国产免费视频在线 | 久草导航 | 毛片免费观看视频 | 亚洲少妇诱惑 | 精品欧美一区二区精品久久 | 俄罗斯论理片 | 亚洲综人网| 欧美性色生活片免费播放 | 在线天堂资源 | 久草在线看片 | 日韩欧美精品电影 | 成人免费看视频 | 黄色片免费看网站 | 亚洲婷婷日日综合婷婷噜噜噜 |