Dubbo 是一款高性能Java RPC框架,現在有很多公司都在使用,鑑於技多不壓身的原則,折騰一下這玩意
簡介
- spring boot 是當前比較流行的開發工具組合框架,他並不是一個新框架;由於它集合了很多其他的框架和工具,所以用起來很方便
- zookeeper 是一個分佈式的,開放源碼的分佈式應用程序協調服務,是Google的Chubby一個開源的實現,它是集群的管理者,監視著集群中各個節點的狀態根據節點提交的反饋進行下一步合理操作。最終,將簡單易用的接口和性能高效、功能穩定的系統提供給用戶。也是dubbo推薦的註冊中心
安裝
安裝zookeeper
下載地址 zookeeper
解壓後啟動 windows
bin/zkServer.cmd
Linux
./zkServer.sh
dubbo 管理控制檯dubbo-admin
2.6.x 版本後 dubbo-admin 庫被遷移新地址 dubbo-admin 部分功能尚不能使用,而且是英文的
這裡使用 2.5.x ,依然還是原來的倉庫,只不過需要將分支切換到 2.5.x 才能下載到
下載下來之後打包
cdarget目錄下的dubbo-admin-2.5.10.war放到tomcat中運行
注意:dubbo-admin不支持jdk1.8,所以要更改 jdk 環境變量, 這裡提供不更改 jdk 環境變量的方法
window 修改 setclasspath.bat在開頭加入jdk
linux 修改 setclasspath.sh
啟動tomcat 訪問 http://host:port/dubbo-admin-2.5.10
用戶名和密碼在WEB-INF/dubbo.properties 可修改
Dubbo項目搭建
官方也有相關的示例可供參考 參見:Dubbo Spring-Boot
創建maven項目,項目結構如下
父級模塊pom.xml
添加依賴
在公共模塊寫一個接口
生產者模塊
pom.xml
- 添加父級
- 添加公共模塊
配置文件
src/main/resources/application.properties
實現API接口
注意 @Srvice 註解不是 spring 的註解 而是 com.alibaba.dubbo.config.annotation.Service
啟動類
- @EnableDubbo 註解表示 開啟 dubbo 服務 或者在配置文件(application.properties) 添加dubbo.scan ( 掃描 dubbo 包 ) 也可以開啟
- 可以不是 web 項目
啟動該項目 啟動完成後在 dubbo-admin 能看到有一個應用說明註冊成功,否則不成功
消費者模塊
pom.xml
- 添加父級
- 添加公共模塊
- 添加 spring boot web 支持
配置文件
src/main/resources/application.properties
啟動類
調用生產者
啟動後訪問 http//host:8010/hello 出現如下界面則表示成功
到此基本的入門是沒有問了
注意
注意使用了spring-boot + dubbo的配置文件dubbo的配置信息是沒有spring前綴的
錯誤示例
這樣 dubbo 是無法獲取的,除非在 @Service 註解中指定
結語
閱讀更多 Langzi 的文章