Spring Cloud Feign 使用Apache的HTTP Client替換Feign原生httpclient

http 連接池能提升性能

http 的背景原理

a. 兩臺服務器建立 http 連接的過程是很復雜的一個過程,涉及到多個數據包的交換,并且也很耗時間。
b. Http 連接需要的 3 次握手 4 次分手開銷很大,這一開銷對于大量的比較小的 http 消息來說更大。

優化解決方案

a. 如果我們直接采用 http 連接池,節約了大量的 3 次握手 4 次分手;這樣能大大提升吞吐率。
b. feign 的 http 客戶端支持 3 種框架;HttpURLConnection、httpclient、okhttp;默認是HttpURLConnection。
c. 傳統的 HttpURLConnection 是 JDK 自帶的,并不支持連接池,如果要實現連接池的機制,還需要自己來管理連接對象。對于網絡請求這種底層相對復雜的操作,如果有可用的其他方案,也沒有必要自己去管理連接對象。
d. HttpClient 相比傳統 JDK 自帶的 HttpURLConnection,它封裝了訪問 http 的請求頭,參數,內容體,響應等等;它不僅使客戶端發送 HTTP 請求變得容易,而且也方便了開發人員測試接口(基于 Http 協議的),即提高了開發的效率,也方便提高代碼的健壯性;另外高并發大量的請求網絡的時候,還是用“連接池”提升吞吐量。

案例實現

1.添加相關的依賴

添加httpClient的依賴,同時添加Feign對HttpClient的支持


?

1.修改配置文件

在配置文件中開啟feign對httpClient的設置。

注意:如果使用 HttpClient 作為 Feign 的客戶端工具。那么在定義接口上的注解是需要注意,如果傳遞的是一個自定義的對象(對象會使用 json 格式來專遞)。需要制定類型。

consumes=MediaType.APPLICATION_JSON_VALUE)

?

例子:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/271811.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/271811.shtml
英文地址,請注明出處:http://en.pswp.cn/news/271811.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java容器坐標起點_Java的屏幕坐標是以像素為單位,容器的左下角被確定為坐標的起點...

【單選題】【單選題】【單選題】class A{ int x1; void func1(int x1){ this.x1 x1; } } 關于上述程序,說法錯誤的是( )【單選題】瀏覽器的作用是( )。【判斷題】構建大學生心理危機預警及干預工作機制,更好地幫助有嚴重心理問題的學生度過心理難關,及早預防、及時疏導、有效干…

自媒體工具:文本內容轉音頻文件實用小工具

目錄 ?編輯 1、軟件介紹 2、軟件技術框架 3、使用說明 4、核心代碼文件 5、注意事項 1、軟件介紹 文本內容轉轉音頻文件小工具,采用C#編程語言,基于Framework4.5開發,主要采用百度語音識別SDK,實現了在線文本內容轉音頻文件的功能…

IDEA 創建 SpringCloud項目-多項目方式

SpringCloud 雖然可以用多模塊化的方式來創建,但是,SpirngCloud本身就是為分布式而準備的,如果使用多模塊的話,那就是一個項目,偏離了分布式的概念。所以工程上還是常用多項目的方式,這樣才可以分開布署各個…

php位運算重要嗎,PHP位運算的用途

下面為大家帶來一篇PHP位運算的用途。現在就分享給大家,也給大家做個參考。一起過來看看吧在實際應用中可以做用戶權限的應用我這里說到的權限管理辦法是一個普遍采用的方法,主要是使用到”位運行符”操作,& 位與運算符、| 位或運行符。參…

盤點6款實用的文件對比工具,你都用過嗎?

??作者主頁:IT技術分享社區 ??作者簡介:大家好,我是IT技術分享社區的博主,從事C#、Java開發九年,對數據庫、C#、Java、前端、運維、電腦技巧等經驗豐富。 ??個人榮譽: 數據庫領域優質創作者🏆&#x…

aggregations 詳解1(概述)

aggregation分類 aggregations —— 聚合,提供了一種基于查詢條件來對數據進行分桶、計算的方法。有點類似于 SQL 中的 group by 再加一些函數方法的操作。 聚合可以嵌套,由此可以組成復雜的操作(Bucketing聚合可以包含sub-aggregation&#…

IDEA開發中,類的頭位置生成作者時間信息

點擊 File > Settings > File and Code Templates > Class按照圖中步驟添加如下信息 #if (${PACKAGE_NAME} && ${PACKAGE_NAME} ! "")package ${PACKAGE_NAME};#end #parse("File Header.java") /** * Author WangZeyu * Date ${…

提現接口網站 php,API提現接口

>獲取提現積分的類型,在后臺可以設置某種積分可被提現,此處獲取的數據為可提現積分的類型~~~[api]get:/index.php/accounts/Apipoint/member_withdrawal_listint:type 0#是否智能限制提現積分類型,0:不智能,1&#…

數據庫:PostgreSQL 和 MySQL對比

比較版本:PostgreSQL 11 VS MySQL5.7(innodb引擎) Oracle官方社區版版權情況:PostgreSQL 11(免費開源)、MySQL5.7 Oracle官方社區版(免費開源) 1. CPU限制 PGSQL沒有CPU核心數限制&a…

C#獲取當前系統磁盤符、系統目錄、桌面等

1.獲取方式如下 Environment.SpecialFolder中定義了許多常用的目錄 //獲取當前系統磁盤符方法1,返回:C: string path Environment.GetEnvironmentVariable("systemdrive"); //獲取當前系統磁盤符方法2,返回:C: string path Envir…

MAC電腦常用效率工具推薦

??作者主頁:IT技術分享社區 ??作者簡介:大家好,我是IT技術分享社區的博主,從事C#、Java開發九年,對數據庫、C#、Java、前端、運維、電腦技巧等經驗豐富。 ??個人榮譽: 數據庫領域優質創作者🏆&#x…

Java String類型轉換成Date日期類型

//格式化數據 SimpleDateFormat sdf new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String format sdf.format(new Date()); System.out.println(format);//String格式的數據轉化成Date格式 String timeStr "2019-07-09 03:34:56 "; Date parse sdf.pa…

docker php 安裝swoole,swoole(1)使用docker安裝swoole環境

1.下載鏡像pull php 鏡像docker pull php:7.3-alpine3.8創建容器docker run -it --name test php:7.3-alpine3.8 sh2.進入容器安裝swoole# 安裝依賴的第三方包echo http://mirrors.ustc.edu.cn/alpine/v3.7/main > /etc/apk/repositories && \echo http://mirrors.u…

插件書寫示例

正常模態框代碼 <!DOCTYPE html> <html lang"en"> <head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-wid…

MAC電腦8款常用設計工具推薦

目錄 1、Sketch 3 2、Affinity Designer 3、Framer 4、PaintCode 5、Hype 3 Professional 6、Pixave 2 7、Iconjar 8、Sip for Mac and iPhone 1、Sketch 3 Sketch是完全滿足我上面4條選擇條件的一款UI設計工具&#xff0c;前文第50頁已經提到過相關內容。 2、Affinity Designe…

matlab the installer cannot read,MATLAB安裝 The installer cannot read the mwinstall.dll… | 學步園...

前提&#xff1a;安裝前的文件 的 目錄 不需含有 中文安裝MATLAB7時彈出以下警告對話框&#xff0c;顯示“ The installer cannot read the mwinstall.dll file, This is probably due to a CD reader which can only read files with an eight.three naming convention. Pleas…

專家觀點:即使在云中 硬件同樣至關重要

英特爾最近發布了新一代企業級CPU。第四代E5和E7CPU確實有些與眾不同之處&#xff1a;更多的緩存、更多的內核、更快更多的RAM。但是大家沒有發現這款產品還有一個特別的地方。 也許一切都與云有關&#xff0c;我們已經告別以前的硬件。你可能認為IT命令結構級別越高&#xff0…

matlab怎么安裝compiler,關于MATLAB中compiler配置問題

按照大家的方法進行了系統配置&#xff0c;下載安裝了SDK7.1&#xff0c;可運行mex setup之后還是一直彈出No supported SDK or compiler was found on this computer.Welcome to mex -setup. This utility will help you set upa default compiler. For a list of supported…

計算機硬件:內存條的基礎知識筆記

在電腦硬件中&#xff0c;CPU、顯卡、內存均三者是重中之重&#xff0c;所以我們在選擇這些核心硬件一定要慎重。今天給大家分享一下關于的電腦內存基礎知識&#xff0c;讓更多的裝機朋友們可以更好的學習內存相關知識。 史上最易懂的電腦內存基礎知識 內存條的基本概念&#x…

數獨Sudoku

數獨&#xff08;すうどく&#xff0c;Sūdoku&#xff09;&#xff0c;是源自18世紀瑞士發明&#xff0c;流傳到美國&#xff0c;再由日本發揚光大的一種數學游戲。是一種運用紙、筆進行演算的邏輯游戲。玩家需要根據99盤面上的已知數字&#xff0c;推理出所有剩余空格的數字&…