日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

分布式系統(tǒng)如何尋址?

通過(guò) RPC 框架,能夠解決服務(wù)之間的跨網(wǎng)絡(luò)通信問(wèn)題,是微服務(wù)改造的基礎(chǔ)。

服務(wù)拆分之后,需要維護(hù)更多細(xì)粒度的服務(wù),這樣就涉及到 RPC 客戶端服到服務(wù)端的 部署地址問(wèn)題,如何維護(hù)? 這個(gè)時(shí)候就需要服務(wù)注冊(cè)和發(fā)現(xiàn)。

什么叫服務(wù)發(fā)現(xiàn)?

所謂的服務(wù)發(fā)現(xiàn),就是讓服務(wù)調(diào)用方知道服務(wù)提供方的地址是啥? 比如 Ngnix 作為反向代理器,可以這樣當(dāng)請(qǐng)求到來(lái)時(shí),可以通過(guò) Nginx 知道應(yīng)用服務(wù)器的地址是什么。這個(gè)就叫:服務(wù)發(fā)現(xiàn)

Nginx 是怎么做服務(wù)發(fā)現(xiàn)的?

答案:Nginx 是將應(yīng)用服務(wù)器的地址放在配置文件中。

vi nginx.conf
location  / {
                proxy_pass http://39.107.125.254:8080/springwebdemo/loginaction.do?op=tologin;
                proxy_set_header Host $host:8080;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Via "nginx";
         }
#刷新配置
./nginx -s reload

proxy_pass 配置的就是對(duì)應(yīng)的 url .

配置proxy_pass代理轉(zhuǎn)發(fā)時(shí),如果在proxy_pass后面的url加/,表示絕對(duì)根路徑;如果沒(méi)有/,表示相對(duì)路徑,把匹配的路徑部分也給代理走。

但是這樣存在一些問(wèn)題:

  • 需要擴(kuò)容的時(shí)候,需要修改客戶端配置,重啟客戶端進(jìn)程,操作起來(lái)比較麻煩。
  • 一旦一個(gè)服務(wù)器出故障,需要修改配置,然后重啟,無(wú)法自動(dòng)修復(fù)
  • RPC 服務(wù)端上線無(wú)法提前摘除流量,也就是說(shuō),發(fā)往服務(wù)端的請(qǐng)求流量依然會(huì)存在,客戶端被重啟服務(wù)端的請(qǐng)求還沒(méi)有返回,會(huì)造成客戶端請(qǐng)求失敗。

注冊(cè)中心是怎么解決這些問(wèn)題的?

注冊(cè)中心兩點(diǎn)功能:

  • 提供服務(wù)地址的存儲(chǔ)
  • 當(dāng)存儲(chǔ)內(nèi)容發(fā)生變化時(shí),可以將變更的內(nèi)容推送給客戶端

有了第二個(gè)內(nèi)容,當(dāng)需要緊急擴(kuò)容時(shí),當(dāng)服務(wù)器發(fā)生故障時(shí),需要快速摘除節(jié)點(diǎn),都不用重啟就可以實(shí)現(xiàn)。

使用注冊(cè)中心后,RPC 的通信:

分布式系統(tǒng)如何尋址

 

  • 客戶端與注冊(cè)中心建立連接,告訴注冊(cè)中心。
  • 服務(wù)端向注冊(cè)中心注冊(cè)服務(wù)后,注冊(cè)中心會(huì)將最新的服務(wù)注冊(cè)信息通知給客戶端。
  • 客戶端拿到服務(wù)端的地址之后,就可以向服務(wù)端發(fā)起調(diào)用請(qǐng)求。

服務(wù)端的增加減少對(duì)于客戶端來(lái)說(shuō)是透明的,這樣可以實(shí)現(xiàn)不重啟客戶端,就可以動(dòng)態(tài)地變更服務(wù)節(jié)點(diǎn),并且實(shí)現(xiàn)優(yōu)雅關(guān)機(jī)。

什么是優(yōu)雅關(guān)機(jī)

優(yōu)雅關(guān)機(jī)的相對(duì)面是暴力關(guān)機(jī),暴力停止服務(wù),已經(jīng)發(fā)送的請(qǐng)求還沒(méi)有來(lái)得及處理,就被殺掉,這樣會(huì)造成部分請(qǐng)求失敗。因此需要在服務(wù)端退出的時(shí)候,先停止掉流量,不再受理新的請(qǐng)求,當(dāng)服務(wù)處理完之后再關(guān)閉。

分享到:
標(biāo)簽:分布式 系統(tǒng)
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定