国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

nodejs微服務(wù):服務(wù)發(fā)現(xiàn)與Consul

這篇具有很好參考價(jià)值的文章主要介紹了nodejs微服務(wù):服務(wù)發(fā)現(xiàn)與Consul。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

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

  • 我們?cè)谧鑫⒎?wù)開(kāi)發(fā)的時(shí)候,客戶端的一個(gè)接口可能需要調(diào)用N個(gè)服務(wù),客戶端必須知道所有服務(wù)的網(wǎng)絡(luò)位置(ip+port),如下所示
  • 客戶端 Client
    • 服務(wù)A (IP 1, PROT 1)
    • 服務(wù)B (IP 2, PROT 2)
    • 服務(wù)C (IP 3, PROT 3)
    • 服務(wù)N (IP N, PROT N)
  • 客戶端需要知道目前所有可用的服務(wù)端的ip和端口
  • 以往的做法是把服務(wù)的地址放在配置文件或者數(shù)據(jù)庫(kù)中,這樣就有以下幾個(gè)問(wèn)題:
    • 需要配置N個(gè)服務(wù)的網(wǎng)絡(luò)位置,加大配置的復(fù)雜性
    • 服務(wù)的網(wǎng)絡(luò)位置變化,需要改變每個(gè)調(diào)用者的配置
    • 集群的情況下,難以做負(fù)載(反向代理的方式除外)
  • 總結(jié)起來(lái)一句話:服務(wù)多了,配置很麻煩,問(wèn)題一大堆
  • 所以現(xiàn)在就選擇服務(wù)發(fā)現(xiàn)來(lái)解決這些問(wèn)題,具體設(shè)計(jì)如下:
    • 服務(wù)發(fā)現(xiàn)系統(tǒng)
      • 服務(wù)A (注冊(cè)IP+PORT)
      • 服務(wù)B (注冊(cè)IP+PORT)
      • 服務(wù)C (注冊(cè)IP+PORT)
      • 服務(wù)N (注冊(cè)IP+PORT)
    • 客戶端 <------ 根據(jù)服務(wù)名獲取IP+PORT ------ 服務(wù)發(fā)現(xiàn)系統(tǒng)
  • 與之前解決方法不同的是,加了個(gè)服務(wù)發(fā)現(xiàn)模塊,服務(wù)端把當(dāng)前自己的網(wǎng)絡(luò)位置注冊(cè)到服務(wù)發(fā)現(xiàn)模塊(這里注冊(cè)的意思就是告訴)
  • 服務(wù)發(fā)現(xiàn)就以K-V的方式記錄下,K一般是服務(wù)名,V就是IP:PORT
  • 服務(wù)發(fā)現(xiàn)模塊定時(shí)的輪詢查看這些服務(wù)能不能訪問(wèn)的了(這就是健康檢查)
  • 客戶端在調(diào)用服務(wù)A-N的時(shí)候,就跑去服務(wù)發(fā)現(xiàn)模塊問(wèn)下它們的網(wǎng)絡(luò)位置,然后再調(diào)用它們的服務(wù)
  • 這樣的方式是不是就可以解決上面的問(wèn)題了呢?
  • 客戶端完全不需要記錄這些服務(wù)的網(wǎng)絡(luò)位置,客戶端和服務(wù)端完全解耦!

常見(jiàn)的服務(wù)發(fā)現(xiàn)框架(微服務(wù)注冊(cè)中心)

  • Etcd:k8s 內(nèi)嵌的服務(wù)發(fā)現(xiàn)
  • Mdns:以前mdns是go-micro中默認(rèn)自帶的服務(wù)發(fā)現(xiàn)go-micro的默認(rèn)服務(wù)發(fā)現(xiàn)也是consul
  • Consul:是一個(gè)分布式高可用的系統(tǒng),是為基礎(chǔ)設(shè)施提供服務(wù)發(fā)現(xiàn)和服務(wù)配置的工具,常應(yīng)用于grpc、 go-micro中
  • Zookeeper:是 Apache 公司為分布式應(yīng)用設(shè)計(jì)的協(xié)調(diào)服務(wù),java中較常用
  • Eureka:Netflix 開(kāi)源的一款提供服務(wù)注冊(cè)和發(fā)現(xiàn)的產(chǎn)品,已閉源,提供了完整的服務(wù)注冊(cè)和發(fā)現(xiàn),springcloud中最核心的組件之一,需要手動(dòng)配置 Eureka Server 服務(wù)器
  • Nacos:Alibaba 開(kāi)源的一款專注于動(dòng)態(tài)服務(wù)發(fā)現(xiàn),配置和服務(wù)管理的組件

關(guān)于服務(wù)發(fā)現(xiàn)框架Consul

  • Consul是Go語(yǔ)言寫(xiě)的開(kāi)源的服務(wù)器發(fā)現(xiàn)軟件,用于實(shí)現(xiàn)分布式系統(tǒng)的服務(wù)發(fā)現(xiàn)與配置
  • 包含多個(gè)組件, 但是作為一個(gè)整體, 為你的基礎(chǔ)設(shè)施提供服務(wù)發(fā)現(xiàn)和服務(wù)配置的工具
  • 它提供以下關(guān)鍵特性:
    • 服務(wù)發(fā)現(xiàn):consul通過(guò)DNS或者HTTP接口使服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn)變的很容易,一些外部服務(wù),例如saas提供的也可以一樣注冊(cè)
    • 健康檢查:健康檢測(cè)使consul可以快速的告警在集群中的操作。和服務(wù)發(fā)現(xiàn)的集成,可以防止服務(wù)轉(zhuǎn)發(fā)到故障的服務(wù)上面 (心跳機(jī)制)
    • 鍵/值存儲(chǔ):一個(gè)用來(lái)存儲(chǔ)動(dòng)態(tài)配置的系統(tǒng)。提供簡(jiǎn)單的HTTP接口,可以在任何地方操作
    • 多數(shù)據(jù)中心:無(wú)需復(fù)雜的配置,即可支持任意數(shù)量的區(qū)域
      • 官方建議:最好是三臺(tái)或者三臺(tái)以上的consul在運(yùn)行,同名服務(wù)最好是三臺(tái)或三臺(tái)以上
      • 默認(rèn)可以搭建集群
    • Web管理界面:官方提供web管理界面
      • 官網(wǎng):https://www.consul.io
      • Git地址:https://github.com/hashicorp/consul
    • 負(fù)載均衡:可實(shí)現(xiàn)負(fù)載均衡功能

Consul安裝

  • Consul用Golang實(shí)現(xiàn),因此具有天然可移植性 (支持 Linux、windows和macOS),安裝包僅包含一個(gè)可執(zhí)行文件
  • Consul安裝非常簡(jiǎn)單,只需要下載對(duì)應(yīng)系統(tǒng)的軟件包并解壓后就可使用

1 ) Windows安裝

  • 地址: https://www.consul.io/downloads 或 :https://releases.hashicorp.com/consul
  • 下載consul
  • 解壓consul到某一個(gè)目錄
  • 配置consul到環(huán)境變量
  • 測(cè)試:consul -v

2 ) Mac安裝

  • 方式1:

    • $ brew tap hashicorp/tap
    • $ brew install hashicorp/tap/consul
  • 方式2:

    • 下載consul,地址:https://releases.hashicorp.com/consul,注意下載非ent的,選擇 consul_x.xx.x_darwin_amd64.zip (按照自己機(jī)型cpu架構(gòu)選擇)
    • 解壓consul到某一個(gè)目錄,配置consul到環(huán)境變量,或者下載解壓后,將文件放置在 /usr/local/bin 目錄下
    • 查看安裝情況:$ consul --version

3 ) Linux安裝文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-408837.html

  • 方式1:
    • 1 )Ubuntu
    • $ wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
    • $ echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
    • $ sudo apt update && sudo apt install consul
    • 2 )CentOS
    • $ sudo yum install -y yum-utils
    • $ sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
    • $ sudo yum -y install consul
  • 方式2:
    • 下載consul,地址:https://releases.hashicorp.com/consul
    • 解壓 consul到某一個(gè)目錄, 配置consul到環(huán)境變量
      • [root@localhost ~]# mkdir -p usr/local/consul
      • [root@localhost ~]# unzip consul_1.11.4_linux_arm64.zip -d /usr/local/consul/
      • [root@localhost ~]# cd /usr/local/consul/
      • [root@localhost ~]# ./consul -v
    • 注意:如果要全局使用請(qǐng)把consul加入到環(huán)境變量,或者下載解壓后,將文件放置在 /usr/local/bin 目錄下
    • 安裝 Consul后,通過(guò)執(zhí)行 consul命令,你可以看到命令列表的輸出: $ consul

到了這里,關(guān)于nodejs微服務(wù):服務(wù)發(fā)現(xiàn)與Consul的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • docker consul 服務(wù)注冊(cè)與發(fā)現(xiàn)

    Docker consul的容器服務(wù)更新與發(fā)現(xiàn) ------------------------------------ Consul ------------------------------------ (1)什么是服務(wù)注冊(cè)與發(fā)現(xiàn) 服務(wù)注冊(cè)與發(fā)現(xiàn)是微服務(wù)架構(gòu)中不可或缺的重要組件。起初服務(wù)都是單節(jié)點(diǎn)的,不保障高可用性,也不考慮服務(wù)的壓力承載,服務(wù)之間調(diào)用單純的通過(guò)接

    2024年02月09日
    瀏覽(16)
  • Docker consul、容器服務(wù)更新與發(fā)現(xiàn)

    Docker consul、容器服務(wù)更新與發(fā)現(xiàn)

    Consul服務(wù)器:192.168.188.17,consul服務(wù),nginx服務(wù),consul-template守護(hù)進(jìn)程 Registrator服務(wù)器:192.168.188.11,registrator容器,nginx容器 建立consul服務(wù)器 mkdir /opt/consul cp consul_0.9.2_linux_amd64.zip /opt/consul cd /opt/consul unzip consul_0.9.2_linux_amd64.zip mv consul /usr/local/bin/ 設(shè)置代理 在后臺(tái)啟動(dòng)consul服務(wù)

    2024年01月19日
    瀏覽(29)
  • Docker consul容器服務(wù)自動(dòng)發(fā)現(xiàn)和更新

    Docker consul容器服務(wù)自動(dòng)發(fā)現(xiàn)和更新

    目錄 一、什么是服務(wù)注冊(cè)與發(fā)現(xiàn)???????? 二、Docker-consul集群 1.Docker-consul 2.registrator 3.Consul-template 三、Docker-consul實(shí)現(xiàn)過(guò)程 四、Docker-consul集群配置 1.下載consul服務(wù) 2.web服務(wù)器啟動(dòng)多例nginx容器,使用registrator自動(dòng)發(fā)現(xiàn) 3.使用nginx做反向代理,使用Consul-template配置自動(dòng)修改配

    2024年02月10日
    瀏覽(25)
  • 【Docker】Consul的容器服務(wù)更新與發(fā)現(xiàn)

    【Docker】Consul的容器服務(wù)更新與發(fā)現(xiàn)

    服務(wù)注冊(cè)與發(fā)現(xiàn)是微服務(wù)架構(gòu)中不可或缺的重要組件。起初服務(wù)都是單節(jié)點(diǎn)的,不保障高可用性,也不考慮服務(wù)的壓力承載,服務(wù)之間調(diào)用單純的通過(guò)接口訪問(wèn)。直到后來(lái)出現(xiàn)了多個(gè)節(jié)點(diǎn)的分布式架構(gòu),起初的解決手段是在服務(wù)前端負(fù)載均衡,這樣前端必須要知道所有后端服

    2024年02月15日
    瀏覽(23)
  • Docker consul 容器服務(wù)自動(dòng)發(fā)現(xiàn)和更新

    Docker consul 容器服務(wù)自動(dòng)發(fā)現(xiàn)和更新

    目錄 一、什么是服務(wù)注冊(cè)與發(fā)現(xiàn) 二、Docker-consul集群 1.Docker-consul consul提供的一些關(guān)鍵特性 2.registrator 3.Consul-template 三、Docker-consul實(shí)現(xiàn)過(guò)程 以配置nginx負(fù)載均衡為例 先配置consul-agent ,有兩種模式server和client 四、Docker-consul集群配置 下載consul服務(wù) 常用啟動(dòng)選項(xiàng) web服務(wù)器啟動(dòng)多

    2024年02月10日
    瀏覽(22)
  • Eureka、Zookeeper、Consul服務(wù)注冊(cè)與發(fā)現(xiàn)

    Eureka、Zookeeper、Consul服務(wù)注冊(cè)與發(fā)現(xiàn)

    一、Eureka服務(wù)注冊(cè)與發(fā)現(xiàn) 1.1 概念 Eureka 是 Netflix 公司開(kāi)源的一個(gè)服務(wù)注冊(cè)與發(fā)現(xiàn)的組件 。 Eureka 和其他 Netflix 公司的服務(wù)組件(例如負(fù)載均衡、熔斷器、網(wǎng)關(guān)等) 一起,被 Spring Cloud 社區(qū)整合為Spring-Cloud-Netflix 模塊。 Eureka 包含兩個(gè)組件:Eureka Server (注冊(cè)中心) 和 Eureka Clien

    2024年02月02日
    瀏覽(21)
  • Docker 之 Consul容器服務(wù)更新與發(fā)現(xiàn)

    Docker 之 Consul容器服務(wù)更新與發(fā)現(xiàn)

    服務(wù)注冊(cè)與發(fā)現(xiàn)是微服務(wù)架構(gòu)中不可或缺的重要組件。起初服務(wù)都是單節(jié)點(diǎn)的,不保障高可用性,也不考慮服務(wù)的壓力承載,服務(wù)之間調(diào)用單純的通過(guò)接口訪問(wèn)。直到后來(lái)出現(xiàn)了多個(gè)節(jié)點(diǎn)的分布式架構(gòu),起初的解決手段是在服務(wù)前端負(fù)載均衡,這樣前端必須要知道所有后端服

    2024年02月15日
    瀏覽(31)
  • Docker consul的容器服務(wù)注冊(cè)與發(fā)現(xiàn)

    Docker consul的容器服務(wù)注冊(cè)與發(fā)現(xiàn)

    nacos(轉(zhuǎn)給微服務(wù))、Eureka和consul一樣,也是服務(wù)注冊(cè)與發(fā)現(xiàn) 服務(wù)注冊(cè)與發(fā)現(xiàn)是微服務(wù)架構(gòu)中不可或缺的重要組件。起初服務(wù)都是單節(jié)點(diǎn)的,不保障高可用性,也不考慮服務(wù)的壓力承載,服務(wù)之間調(diào)用單純的通過(guò)接口訪問(wèn)。直到后來(lái)出現(xiàn)了多個(gè)節(jié)點(diǎn)的分布式架構(gòu),起初的解決

    2024年02月11日
    瀏覽(19)
  • Docker consul的容器服務(wù)更新與發(fā)現(xiàn)

    Docker consul的容器服務(wù)更新與發(fā)現(xiàn)

    什么是服務(wù)注冊(cè)與發(fā)現(xiàn) 服務(wù)注冊(cè)與發(fā)現(xiàn)是微服務(wù)架構(gòu)中不可或缺的重要組件。起初服務(wù)都是單節(jié)點(diǎn)的,不保障高可用性,也不考慮服務(wù)的壓力承載,服務(wù)之間調(diào)用單純的通過(guò)接口訪問(wèn)。直到后來(lái)出現(xiàn)了多個(gè)節(jié)點(diǎn)的分布式架構(gòu),起初的解決手段是在服務(wù)前端負(fù)載均衡,這樣前端

    2024年02月08日
    瀏覽(23)
  • Docker+Consul+Registrator 實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)

    Docker+Consul+Registrator 實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)

    第四階段 時(shí) ?間:2023年8月8日 參加人:全班人員 內(nèi) ?容: Docker+Consul+Registrator 實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn) 目錄 一、服務(wù)注冊(cè)中心引言 CAP理論是分布式架構(gòu)中重要理論: 二、服務(wù)注冊(cè)中心軟件 (一)ZooKeeper (二)Eureka (三)Etcd (四)Consul 常用的服務(wù)發(fā)現(xiàn)產(chǎn)品之間的比較: 三

    2024年02月13日
    瀏覽(85)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包