服務註冊即服務例項將自身服務資訊註冊到註冊中心包括服務所在的ip和port,服務版本以及訪問協議等。
dns就是乙個經典的服務註冊。
服務發現即服務例項通過註冊中心,獲取到註冊到其中的服務例項的資訊,通過這些資訊去請求他們提供的服務。
由於自動擴縮,故障與公升級,整組服務例項會動態變更的問題的存在所以我們需要使用服務於註冊中心。
nacos的安裝
nacos本地訪問的位址
服務提供者例項
//註解@enablediscoveryclient使得註冊中心獲取應用資訊
@enablediscoveryclient
public static void main(string args)
}@restcontroller
class echocontroller }
server.port=8081
#註明nacos服務的位址
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
#暴露的埠
management.endpoints.web.exposure.include=*
springboot監測路徑
服務消費者例項
@enablediscoveryclient
@enablefeignclients
@loadbalanced
@bean
public resttemplate resttemplate()
public static void main(string args)
}@feignclient(name = "service-provider")
inte***ce echoservice
@restcontroller
class testcontroller
public string feign(@pathvariable string str) }
server.port=18082
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
啟動之後註冊中心的效果
nacos對ribbon介面有擴充套件,支援負載均衡!
用Nacos作為服務註冊發現元件
nacos 致力於幫助您發現 配置和管理微服務。nacos 提供了一組簡單易用的特性集,幫助您快速實現動態服務發現 服務配置 服務元資料及流量管理。是spring cloud a 中的服務註冊發現元件,類似於consul eureka,同時它又提供了分布式配置中心的功能,這點和consul的conf...
2 1啟動nacos實現服務註冊發現自定義負載均衡
2 nacos通過配置檔案中spring name實現服務的註冊 3 以下 發現服務集群,通過服務例項serviceinstance獲取服務ip和埠 listinstances discoveryclient.getinstances 微服務名稱 4 這個步驟引入了乙個自定義的負載均衡 org.sp...
服務註冊與發現
在分布式系統中,各個子系統都是多個例項存在,這個時候必須要引入乙個服務協調器,用於給呼叫方提供可用的呼叫提供者的命名訊息。服務協調器,如zookeeper,etcd,eureka 他們必須要有的特性 本身高可用,由多個服務節點構成,就算有些節點掛掉也不影響正常執行,避免了單點故障。本身是乙個分布式,...