很多公司都用dubbo作為自己的rpc遠端服務呼叫框架,其優異的效能也是得到了大家的認可。目前的標配是用zookeeper進行服務註冊,用dubbo自帶的dubbo admin進行服務管理,基本來說是夠用的。
在講今天的內容之前,還是看看dubbo+zookeeper是怎麼玩的。
dubbo+zookeeper配置流程
1.pom依賴
com.alibaba.spring.boot
dubbo-spring-boot-starter
2.0.0
com.101tec
zkclient
0.10
2.暴露服務介面
介面:
public inte***ce sturpcservice
實現類:(這裡的@service註解是dubbo的,不要用spring的)
@service
@component
public class sturpcserviceimpl implements sturpcservice
}
3. 消費服務
@restcontroller
public class rpcconsumercontroller }
4. dubbo註冊配置
dubbo.registry.protocol=zookeeper
dubbo.registry.address=127.0.0.1:2181
5. 起zookeeper,起自己的應用,就可以玩起來了。
dubbo+nacos配置流程要做的改動
1. pom依賴
com.alibaba
dubbo-registry-nacos
0.0.2
com.alibaba.nacos
nacos-client
0.6.1
nacos.discovery.server-addr=127.0.0.1:8848
nacos.config.server-addr=127.0.0.1:8848
dubbo.registry.address = nacos:
dubbo.protocol.name=dubbo
dubbo.protocol.port=-1
3. 啟動nacos,看看服務提供者和消費者是不是都註冊上來了
4. 呼叫一把服務
我是用idea通過8090埠起的服務,這裡把服務提供的@service給注釋掉了,然後用dos命令視窗通過8091埠起了一遍應用,這裡是沒有注釋掉@service的包。造成的結果是:8090埠的應用沒有提供服務,8091埠的應用提供了add服務。
呼叫後的結果:
網頁上顯示3,idea控制台沒有列印任何日誌,dos命令視窗列印了日誌
總結使用nacos替換掉zookeeper,對整個專案的改動並不大。至於為什麼用nacos,不用zookeeper,有下面的原因
1)分布式系統有cap理論,nacos實現了ap,zookeeper實現了cp,為了系統的ha,寧願選用ap
2)zookeeper僅僅是乙個簡單的服務註冊工具,nacos不僅僅支援服務註冊發現,而且實現了配置中心
3)nacos作為springcloud全家桶一員,未來的發展肯定是和微服務路線圖發展一致
spring cloud Eureka服務註冊
yls 2020 5 5 org.springframework.cloud spring cloud starter netflix eureka server enableeurekaserver public static void main string args spring name i...
delphi通過winexec執行服務註冊
delphi xe 10.2.2 通過呼叫winexec進行服務註冊,這樣寫 winexec pansichar aaa.exe install sw hide 可以成功註冊,但是這樣寫就一直不能註冊服務var v str string begin v str aaa.exe install win...
Linux上搭建zookeeper服務註冊中心
1.上傳zookeeper檔案至linux中 jdk 8u121 linux x64.tar.gz zookeeper 3.4.9.tar.gz 上傳的具體步驟 2.安裝jdk以及jdk配置環境變數 具體步驟 3.解壓zookeeper壓縮包至 opt目錄下 tar xzvf zookeeper 3...