(精華)2020年8月22日 微服務(wù) Consul的介紹

      網(wǎng)友投稿 895 2025-04-05

      Consul簡(jiǎn)介

      Consul是基于GO語(yǔ)言開發(fā)的開源工具,主要面向分布式,服務(wù)化的系統(tǒng)提供服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)和配置管理的功能。Consul的功能都很實(shí)用,其中包括:服務(wù)注冊(cè)/發(fā)現(xiàn)、健康檢查、Key/Value存儲(chǔ)、多數(shù)據(jù)中心和分布式一致性保證等特性。Consul本身只是一個(gè)二進(jìn)制的可執(zhí)行文件,所以安裝和部署都非常簡(jiǎn)單,只需要從官網(wǎng)下載后,在執(zhí)行對(duì)應(yīng)的啟動(dòng)腳本即可。

      Consul特性

      基礎(chǔ)特性

      1.服務(wù)注冊(cè)/發(fā)現(xiàn)

      為什么微服務(wù)架構(gòu)下就需要做服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn)呢?微服務(wù)的目標(biāo)就是要將原來大一統(tǒng)的系統(tǒng)架構(gòu),拆分成細(xì)粒度的按功能職責(zé)分成的小系統(tǒng),這樣就會(huì)出現(xiàn)很多小的系統(tǒng),部署的節(jié)點(diǎn)也會(huì)隨之增加。試想一下,如果沒有一個(gè)統(tǒng)一的服務(wù)組件來管理各系統(tǒng)間的列表,微服務(wù)架構(gòu)是很難落地實(shí)現(xiàn)的。

      Consul提供的服務(wù)注冊(cè)/發(fā)現(xiàn)功能在數(shù)據(jù)強(qiáng)一致性和分區(qū)容錯(cuò)性上都有非常好的保證,但在集群可用性下就會(huì)稍微差一些(相比Euerka來說)。

      2.數(shù)據(jù)強(qiáng)一致性保證

      Consul采用了一致性算法Raft來保證服務(wù)列表數(shù)據(jù)在數(shù)據(jù)中心中各Server下的強(qiáng)一致性,這樣能保證同一個(gè)數(shù)據(jù)中心下不管某一臺(tái)Server Down了,請(qǐng)求從其他Server中同樣也能獲取的最新的服務(wù)列表數(shù)據(jù)。數(shù)據(jù)強(qiáng)一致性帶來的副作用是當(dāng)數(shù)據(jù)在同步或者Server在選舉Leader過程中,會(huì)出現(xiàn)集群不可用。

      3.多數(shù)據(jù)中心

      Consul支持多數(shù)據(jù)中心(Data Center),多個(gè)數(shù)據(jù)中心之間通過Gossip協(xié)議進(jìn)行數(shù)據(jù)同步。多數(shù)據(jù)中心的好處是當(dāng)某個(gè)數(shù)據(jù)中心出現(xiàn)故障時(shí),其他數(shù)據(jù)中心可以繼續(xù)提供服務(wù),提升了可用性。

      4.健康檢查

      Consul支持基本硬件資源方面的檢查,如:CPU、內(nèi)存、硬盤等

      5.Key/Value存儲(chǔ)

      Consul支持Key/Value存儲(chǔ)功能,可以將Consul作為配置中心使用,可以將一些公共配置信息配置到Consul,然后通過Consul提供的 HTTP API來獲取對(duì)應(yīng)Key的Value。

      高級(jí)特性

      1.HTTP API

      2.ACL

      Consul工作模式

      從上圖可以看到,Consul中包括的3種不同的角色:Client、Server、Server-Leader。還有一個(gè)在圖上沒有標(biāo)出來的角色Agent,一共4個(gè)角色,下面會(huì)逐一介紹它們的作用。

      Agent

      1.是一個(gè)守護(hù)線程

      2.跟隨Consul應(yīng)用啟動(dòng)而啟動(dòng)

      3.負(fù)責(zé)檢查、維護(hù)節(jié)點(diǎn)同步

      Client

      1.轉(zhuǎn)發(fā)所有請(qǐng)求給Server

      2.無狀態(tài),不持久化數(shù)據(jù)

      3.參與LAN Gossip的健康檢查

      Server

      1.持久化數(shù)據(jù)

      2.轉(zhuǎn)發(fā)請(qǐng)求給Server-Leader

      3.參與Server-Leader選舉

      4.通過WAN Gossip,與其他數(shù)據(jù)中心交換數(shù)據(jù)

      Server-Leader

      1.響應(yīng)RPC請(qǐng)求

      2.服務(wù)列表數(shù)據(jù)同步給Server

      Consul工作原理

      服務(wù)注冊(cè)的方式

      (精華)2020年8月22日 微服務(wù) Consul的介紹

      Consul服務(wù)注冊(cè)有兩種方式:HTTP API & JSON配置文件

      方式一:HTTP API

      http://{ip}:8500/v1/agent/service/register/:service

      1

      方式二:JSON 配置文件

      { "services": [ { "id": "serverId", "name": "serverName", "tags": [ "primary" ], "address": "127.0.0.1", "port": 9003, "checks": [ { "id": "api-servie", "name": "Service 'xx' check", "http": "http://127.0.0.1:9003/public/health", "method": "GET", "interval": "10s", "timeout": "1s" } ] } ] }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      16

      17

      18

      19

      20

      21

      22

      23

      啟動(dòng)Consul增加啟動(dòng)參數(shù)-config-dir

      nohup ./consul agent -dev -config-dir=/consul-conf/service.json &

      1

      服務(wù)發(fā)現(xiàn)的方式

      服務(wù)發(fā)現(xiàn)的方式同時(shí)有兩種:HTTP API & DNS Agent

      方式一:HTTP API

      //獲取某個(gè)service下健康的服務(wù)列表信息 http://{ip}:8500/v1/health/service/:service

      1

      2

      方式二:DNS Agent

      工作流程

      微服務(wù) 邊緣數(shù)據(jù)中心管理 EDCM

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Excel2007工作表的保護(hù)包括單元格保護(hù)及取消保護(hù)等等(excel2010保護(hù)工作表)
      下一篇:預(yù)計(jì)到2023年年底,中國(guó)50%的制造業(yè)供應(yīng)鏈環(huán)節(jié)將采用人工智能
      相關(guān)文章
      亚洲AV无码一区二区二三区软件 | 综合亚洲伊人午夜网 | 亚洲六月丁香六月婷婷蜜芽| 久久久久亚洲精品美女| 亚洲日韩精品一区二区三区无码 | 亚洲午夜成人精品电影在线观看| 国产综合成人亚洲区| 亚洲AV永久无码精品放毛片| 亚洲国产成人综合精品| 亚洲av永久无码精品网址| 亚洲AV无码精品国产成人| 亚洲av色香蕉一区二区三区 | 亚洲中文字幕精品久久| www.亚洲成在线| 国产日本亚洲一区二区三区| 2020久久精品亚洲热综合一本 | 在线观看午夜亚洲一区| 黑人大战亚洲人精品一区| 国产亚洲精久久久久久无码AV| 久久精品国产亚洲AV不卡| 国产美女亚洲精品久久久综合| 亚洲精品成人a在线观看| 亚洲精品国产电影| 成人亚洲性情网站WWW在线观看| 久久99亚洲综合精品首页| 成人午夜亚洲精品无码网站| 亚洲另类激情综合偷自拍图| 亚洲av最新在线网址| 亚洲色四在线视频观看| 337p日本欧洲亚洲大胆精品555588 | 久久久亚洲精品视频| 911精品国产亚洲日本美国韩国 | 亚洲国产综合人成综合网站| 久久久久亚洲AV成人网人人软件| 在线精品亚洲一区二区小说| 亚洲精品无码不卡| 亚洲中文久久精品无码1| 亚洲成_人网站图片| 国产精品亚洲色婷婷99久久精品| 亚洲片一区二区三区| 国产成人精品日本亚洲网站|