Nacos原理

Nacos核心功能點

服務注冊

Nacos Client會通過發(fā)送REST請求的方式向Nacos Server注冊自己的服務,提供自身的元數(shù)據(jù),比如ip地址、端口等信息。Nacos Server接收到注冊請求后,就會把這些元數(shù)據(jù)信息存儲在一個雙層的內(nèi)存Map中。

服務心跳

在服務注冊后,Nacos Client會維護一個定時心跳來持續(xù)通知Nacos Server,說明服務一直處于可用狀態(tài),防止被剔除。默認5s發(fā)送一次心跳。

服務同步

Nacos Server集群之間會互相同步服務實例,用來保證服務信息的一致性。

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

服務消費者(Nacos Client)在調(diào)用服務提供者的服務時,會發(fā)送一個REST請求給Nacos Server,獲取上面注冊的服務清單,并且緩存Nacos Client本地,同時會在Nacos Client本地開啟一個定時任務定時拉取服務端最新的注冊表信息更新到本地緩存

服務健康檢查

Nacos Server會開啟一個定時任務用來檢查注冊服務實例的健康情況,對于超過15s沒有收到客戶端心跳的實例會將它的healthy屬性置為false(客戶端服務發(fā)現(xiàn)時不會發(fā)現(xiàn)),如果某個實例超過30秒沒有收到心跳,直接剔除該實例(被剔除的實例如果恢復發(fā)送心跳則會重新注冊)

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容