不妨试试更快更小更灵活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】

推荐阅读