服务消费者添加如下依赖
<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;}}
启动服务提供者和服务消费者
文章插图
访问服务消费者测试Controller的测试接口,http://localhost:8080/test,返回正确结果
文章插图
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的键值对 。文章插图
然后在服务注册端的本地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文章插图
查看Nacos服务管理可以看下服务名已经正常注册了
文章插图
访问测试地址http://localhost:8080/test,可以看到成功调用服务注册方的方法,也打印从Nacos配置中心的配置项值,至此,已经实现基于Nacos的配置、服务注册和发现的基本功能 。
文章插图
**本人博客网站 **IT小神www.itxiaoshen.com
【不妨试试更快更小更灵活Java开发框架Solon】
推荐阅读
- Python 3.12 目标:还可以更快!
- 两道超有意思的 CSS 面试题,试试你的基础
- 鱼苗怎么养会长的更快
- 要简单就试试走路减肥法吧
- 教师编制考试试题及答案 教师编制考试试题
- 从纪王到上海南站怎么走?
- 小米分期怎么开通?大家可以这么试试!
- 重庆驾照考试模拟试题 重庆驾考理论考试试题
- 长春交规模拟考试题库 交规考试试卷
- 怎么让学车变得更容易 怎么学车更快