2 2 Consul註冊登出流程

2022-01-11 08:37:45 字數 837 閱讀 7538

鋪墊,建立健康檢查方法,consul伺服器隔一段時間請求一下webapi裡的乙個方法,如果這個方法沒有問題,則證明這個webapi還在正常工作,這個webapi提供的服務就存在。如果方法沒有返回,或者返回錯誤,那麼服務就沒有了,就應該把服務從consul中登出。

在此,將被請求用以驗證webapi是否正常的方法稱為健康檢查,其實就是webapi控制器中的乙個方法:

完成鋪墊之後,就應該在啟動webapi的時候,讓webapi本身向consul伺服器進行服務註冊,告訴consul,服務名是什麼,服務id是多少,服務位址(ip和埠),服務的健康檢查機制是怎麼樣的。

為什麼要webapi進行註冊呢?很顯然,consul伺服器是一直啟動的,我們不可能啟動乙個服務,就手動關閉consul,然後修改**,在consul**裡面註冊服務。

我們將註冊**寫入webapi的startup類的configure方法裡面去:

在上述**中,我們應該注意到向consul伺服器註冊和登出的兩個方法都是非同步的,在這裡我們都要wait一下。

附帶一句 要在提供服務的專案中用nuget安裝consul:install-package consul -version 0.7.2.5

另外這裡面的註冊服務和登出服務都用了wait(),原因如下:

consul作為SpringCloud註冊中心

一 consul 簡介 consul是一種服務發現和配置工具。consul具有分布式,高可用性和極高的可擴充套件性。github 注意 在本地啟用consul 需要通過cmd 命令列,詳見 二 springcloud 用 consul作為註冊中心 2.1 服務提供方 1 pom依賴 1.8 gree...

consul服務註冊

這是定義服務的根級引數。您可以指定引數來配置服務。範圍描述 預設必需的 id 指定服務 id 的字串值。如果未指定,name將使用該字段的值。每個節點的服務必須具有唯一的 id,因此如果預設值name會與其他服務衝突,您應該指定唯一的值。name引數值 可選的name 指定服務的名稱。如果id未指定...

Consul註冊中心

中文參考手冊 consul是一種服務網格解決方案,提供具有服務發現,配置和分段功能的全功能控制平面。這些功能可以根據需要單獨使用,也可以一起使用以構建完整的服務網格。consul需要乙個資料平面,並支援 和本機整合模型。consul附帶了乙個簡單的內建 因此一切都可以直接使用,還支援envoy等第三...