天天看點

微服務注冊中心之consul

consul的優點:

1.使用了go語言編寫在并發方面比java語言性能都要優秀

2.友善部署,因為安裝包裡面隻有一個可執行檔案

3.基于raft算法(比zookper的實作的算法更容易了解)

微服務注冊中心之consul

consul角色,根據啟動指令

Consul啟動指令三種

-dev (開發模式)

./consul agent -dev

-client (部署到正式環境指令)用戶端角色

./consul agent -client

-server (叢集)服務端角色

./consul agent -server

叢集一般是3~5個,推薦是奇數台的伺服器,規定挂掉叢集數量大于等于一半叢集不可用,用三台和用4台的效果是一樣的,叢集過多同步時間就會變成長是以不推薦

微服務注冊中心之consul

提供者向consul注冊服務,consul定時請求服務者檢視健康狀态,如果不健康了就剔除服務清單(/health)

消費者請求consul取出自己所需的服務,temptable是一個表格形式的文檔

Consumer拿到注冊的id去提供者取自己所需要的服務。

叢集模式

Consul分為兩個區域,用戶端client和服務端server,consul一台挂掉會有從成為主,client隻是做請求觸發,占用的資源很少

叢集的搭建

服務端的啟動

-bind

是自己的服務位址

-client

是放行所有服務

-ui

是可以在8500的界面上可以顯示

bootatrap-expect

是叢集的數量

-data-dir

資料存儲位址

用戶端的啟動

叢集的關聯

./consul join 192.168.10.101

(把其他的consul服務添加到101的consul服務中,101的為主)

用戶端也要做同樣的操作

查詢

./consul/members