當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringCloud Zuul(四)之工作原理
生活随笔
收集整理的這篇文章主要介紹了
SpringCloud Zuul(四)之工作原理
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、篩選器概述
Zuul的中心是一系列過濾器,這些過濾器能夠在HTTP請求和響應(yīng)的路由期間執(zhí)行一系列操作。
以下是Zuul過濾器的主要特征:
- 類型:通常定義路由流程中應(yīng)用過濾器的階段(盡管它可以是任何自定義字符串)
- 執(zhí)行順序:在類型中應(yīng)用,定義多個過濾器的執(zhí)行順序
- 條件:執(zhí)行過濾器所需的條件
- 動作:如果符合條件,將執(zhí)行的動作
Zuul提供了一個框架來動態(tài)讀取,編譯和運行這些過濾器。過濾器不直接相互通信-而是通過每個請求唯一的RequestContext共享狀態(tài)。
過濾器當前以Groovy編寫,盡管Zuul支持任何基于JVM的語言。每個篩選器的源代碼都寫入Zuul服務(wù)器上的一組指定目錄,并定期輪詢這些目錄以查找更改。從磁盤讀取更新的篩選器,將其動態(tài)編譯到正在運行的服務(wù)器中,并由Zuul為每個后續(xù)請求調(diào)用。
?
二、篩選器類型
有幾種標準過濾器類型對應(yīng)于請求的典型生命周期:
- PRE?過濾器在路由到原點之前執(zhí)行。示例包括請求身份驗證,選擇原始服務(wù)器以及記錄調(diào)試信息。
- ROUTING?過濾器處理將請求路由到源。這是使用Apache HttpClient或Netflix Ribbon構(gòu)建和發(fā)送原始HTTP請求的地方。
- POST?過濾器在將請求路由到源之后執(zhí)行。示例包括將標準HTTP標頭添加到響應(yīng),收集統(tǒng)計信息和指標以及將響應(yīng)從源流傳輸?shù)娇蛻舳恕?/li>
- ERROR?在其他階段之一發(fā)生錯誤時,將執(zhí)行過濾器。
除了默認的過濾器流程外,Zuul還允許我們創(chuàng)建自定義過濾器類型并明確執(zhí)行它們。例如,我們有一個自定義STATIC類型,它在Zuul中生成響應(yīng),而不是將請求轉(zhuǎn)發(fā)到源。為此,我們有一些用例,其中一個是內(nèi)部端點,其中包含有關(guān)特定Zuul實例的調(diào)試數(shù)據(jù)。
?
三、Zuul請求生命周期
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎
總結(jié)
以上是生活随笔為你收集整理的SpringCloud Zuul(四)之工作原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 页游对电脑配置要求(页游对电脑配置)
- 下一篇: SpringCloud Zuul(六)之