Nacos
Nacos:支持CP或AP,同時包括了雪崩保護、自動注銷實例、監聽支持、多數據中心、跨注冊中心同步、springCloud基礎、dubbo集成、k8s集成
原理:

原理:
nacos集成到springCloud,nacos client中實現了NacosServiceRegistry,實現了register,deregister、close、setStatus、getStatus之類的方法。在服務啟動后,自動裝配監聽ApplicationStartedEvent事件,去調用NacosServiceRegistry的register進行服務注冊,此外還會通過schedule線程池提交一個定時調度任務,也就是心跳機制,定時發心跳給nacos server。
接著進行注冊,訪問nacos server的open api。nacos server基于ConcurrentHashMap作為注冊表存放服務信息,構造一個Server放到map里,然后對Service去添加一個instance。同時建立定時檢查實例心跳的機制
然后基于raft協議,把注冊同步給其他節點。服務發現的本質也是http接口,會主動拉取也會基于定時任務去拉取,服務端會監聽其他服務的狀態,有異常會基于UDP協議反向通知客戶端這次服務異常變動
本文來自博客園,作者:難得,轉載請注明原文鏈接:http://www.rzrgm.cn/zhangbLearn/p/18829376

浙公網安備 33010602011771號