不妨試試更快更小更靈活Java開發框架Solon( 三 )

服務消費者添加如下依賴
<dependency><groupId>org.noear</groupId><artifactId>solon-rpc</artifactId></dependency><dependency><groupId>org.noear</groupId><artifactId>solon.cloud</artifactId></dependency>app.yml配置文件配置服務發現的地址 , 也即是服務提供者提供的地址
server.port: 8080solon.app:name: demoappgroup: demosolon.cloud.local:discovery:service:local:- "http://localhost:8081"通過@NamiClient注解實現RPC遠程方法的調用
@Controllerpublic class UserController {//使用負載@NamiClient(name = "local",path = "/user/")UserService userService;@Mapping("test")public UserModel test() {UserModel user = userService.getUser(100);System.out.println(user);return user;}}啟動服務提供者和服務消費者

不妨試試更快更小更靈活Java開發框架Solon

文章插圖
訪問服務消費者測試Controller的測試接口,http://localhost:8080/test,返回正確結果
不妨試試更快更小更靈活Java開發框架Solon

文章插圖
Solon Cloud Nacos示例引入依賴
<dependency><groupId>org.noear</groupId><artifactId>nacos-solon-cloud-plugin</artifactId></dependency>先準備好Nacos Server,這里就直接使用前面文章已部署好的Nacos,創建好nacos的test命名空間 , 為了演示讀取nacos的配置,在test下創建一個組為demo的test.properties,并添加db1.url的鍵值對 。
不妨試試更快更小更靈活Java開發框架Solon

文章插圖
然后在服務注冊端的本地app.yml配置文件添加相關nacos的配置信息
server.port: 7112solon.app:namespace: testgroup: demoname: helloapi#發現服務使用的應用名(在Demo,將被NimaClient引用)solon.cloud.nacos:server: 192.168.50.95:8848#nacos服務地址username: nacos#nacos鏈接賬號password: nacos#nacos鏈接密碼聲明HelloService接口 , 服務注冊方實現接口,服務端的工作就完成了
@Mapping("/rpc/")@Remotingpublic class HelloServiceRemoteImp implements HelloService {@Overridepublic String hello() {return "remote: hello";}}作為服務發現的客戶端本地app.yml配置文件添加相關nacos的配置信息如下
solon.app:namespace: testgroup: demo#配置服務使用的默認組name: helloapp#發現服務使用的應用名solon.cloud.nacos:server: 192.168.50.95:8848#nacos服務地址username: nacos#nacos鏈接賬號password: nacos#nacos鏈接密碼config:load: "test.properties"測試的客戶端中也是通過注解@NamiClient注入HelloService接口 , 添加一個測試controller控制器演示
@Controllerpublic class TestController {//這是遠程的@NamiClientHelloService helloService;@Mapping("/test")public String test() throws Exception {helloService.hello();String temp = helloService.hello();System.out.println("helloService return"+temp);return temp + "," + Solon.cfg().get("db1.url");}}已啟動服務注冊serverApp和服務發現ClientApp
不妨試試更快更小更靈活Java開發框架Solon

文章插圖
查看Nacos服務管理可以看下服務名已經正常注冊了
不妨試試更快更小更靈活Java開發框架Solon

文章插圖
訪問測試地址http://localhost:8080/test,可以看到成功調用服務注冊方的方法,也打印從Nacos配置中心的配置項值,至此,已經實現基于Nacos的配置、服務注冊和發現的基本功能 。
不妨試試更快更小更靈活Java開發框架Solon

文章插圖
**本人博客網站 **IT小神www.itxiaoshen.com
【不妨試試更快更小更靈活Java開發框架Solon】

推薦閱讀