web服务优化与健壮性改进_创建健壮的微服务架构所涉及的组件
web服務(wù)優(yōu)化與健壯性改進(jìn)
在本文中,我們將簡(jiǎn)要學(xué)習(xí)構(gòu)建強(qiáng)大的微服務(wù)應(yīng)用程序所需的各種軟件組件。 在簡(jiǎn)要了解每個(gè)架構(gòu)組件之前,我們將陳述設(shè)計(jì)微服務(wù)架構(gòu)時(shí)出現(xiàn)的一般查詢。
1.微服務(wù)架構(gòu)組件
每當(dāng)我們創(chuàng)建微服務(wù)應(yīng)用程序時(shí),我們都會(huì)想到以下問(wèn)題
- 我們將如何注冊(cè)微服務(wù),以便客戶可以使用該注冊(cè)信息(服務(wù)發(fā)現(xiàn))并調(diào)用微服務(wù)?
- 我們?nèi)绾未_保所構(gòu)建的微服務(wù)應(yīng)用程序完全容錯(cuò)并且高度可用?
- 我們?nèi)绾未_保只有一個(gè)接口提供給客戶端,從而減少了很多客戶端的工作量,并使Micro Services應(yīng)用程序非常易于使用?
- 如何無(wú)縫平衡傳入請(qǐng)求到微服務(wù)的負(fù)載?
請(qǐng)查看下面的架構(gòu)圖,并讓我們了解構(gòu)建架構(gòu)所涉及的組件是否可以解決上述所有問(wèn)題:
微服務(wù)架構(gòu)組件
1.1 Netflix Eureka服務(wù)器
Netflix Eureka充當(dāng)發(fā)現(xiàn)服務(wù)器,其中出現(xiàn)后的微服務(wù)會(huì)將其自身注冊(cè)為發(fā)現(xiàn)客戶端。 Netflix Eureka向外界提供了一個(gè)REST接口,用于與其通信。 Eureka還具有另一個(gè)稱為Eureka Client的軟件模塊,通過(guò)它與Eureka Server交互交互以進(jìn)行服務(wù)發(fā)現(xiàn)。 Eureka Client還帶有內(nèi)置的Load Balancer,可以對(duì)傳入的客戶端請(qǐng)求進(jìn)行負(fù)載平衡。
Netflix Eureka Server是上述問(wèn)題1的答案。
1.2 Hystrix服務(wù)器
Hystrix充當(dāng)容錯(cuò)彈性系統(tǒng),用于避免軟件應(yīng)用程序完全失敗。 它通過(guò)提供一種斷路器機(jī)制來(lái)做到這一點(diǎn),在這種機(jī)制中,當(dāng)應(yīng)用程序平穩(wěn)運(yùn)行而沒有任何問(wèn)題時(shí),電路保持閉合狀態(tài)。 如果應(yīng)用程序中連續(xù)遇到錯(cuò)誤,則Hystrix服務(wù)器電路將打開,Hystrix將停止對(duì)呼叫服務(wù)的任何進(jìn)一步請(qǐng)求,而是將請(qǐng)求轉(zhuǎn)移到回退服務(wù)。 這樣,它提供了一個(gè)高彈性的系統(tǒng)。
Hystrix Server是上面問(wèn)題2的答案。
1.3 Netfilx Zuul服務(wù)器
Netflix Zuul Server充當(dāng)一種網(wǎng)關(guān)服務(wù)器,其中所有客戶端請(qǐng)求hva都通過(guò)它,因此它充當(dāng)一種客戶端的統(tǒng)一接口。 客戶端使用單個(gè)通信協(xié)議與所有微服務(wù)進(jìn)行通信,Zuul服務(wù)器則負(fù)責(zé)使用其適當(dāng)?shù)耐ㄐ艆f(xié)議調(diào)用各種微服務(wù)。 Netflix Zuul還具有內(nèi)置的負(fù)載均衡器,以負(fù)載均衡來(lái)自客戶端的所有傳入請(qǐng)求。
Netflix Zuul Server是上述問(wèn)題3的答案。
1.4 Netflix功能區(qū)
Netflix Ribbon充當(dāng)一種負(fù)載均衡器,其中負(fù)載均衡來(lái)自客戶端的所有傳入請(qǐng)求。 盡管您可以將其配置為使用任何其他備用負(fù)載平衡機(jī)制,但默認(rèn)情況下它使用基本的Round Robin負(fù)載平衡策略。 Netflix Zuul Server已內(nèi)置了Netflix Ribbon。 如果要獨(dú)立使用Netflix Ribbon,我們必須預(yù)配適當(dāng)?shù)腘etflix Ribbon Maven軟件包,以在任何應(yīng)用程序中使用它。
Netflix Ribbon Server是對(duì)以上問(wèn)題4的回答。
2.結(jié)論
在本文中,我們簡(jiǎn)要了解了構(gòu)建Micro Services應(yīng)用程序所需的所有軟件組件。 在下一篇文章中,我們將嘗試詳細(xì)了解Netflix Eureka的工作原理。
翻譯自: https://www.javacodegeeks.com/2016/05/components-involved-creating-robust-micro-service-architecture.html
web服務(wù)優(yōu)化與健壯性改進(jìn)
總結(jié)
以上是生活随笔為你收集整理的web服务优化与健壮性改进_创建健壮的微服务架构所涉及的组件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 安卓app定制多少钱(安卓app定制)
- 下一篇: hyper linux虚拟机链接黑屏(h