dubbo+zookeeper搭建分布式环境(服务消费配置)
继上一章基础上,完成服务消费者配置。服务消费配置模块创建创建模块,命名为 ruoyi-admin, 使用spring initizali创建引入依赖<properties><spring-boot.version>2.1.1.RELEASE</spring-boot.version><dubbo....
·
继上一章基础上,完成服务消费者配置。
服务消费配置
模块创建
- 创建模块,命名为 ruoyi-admin, 使用spring initizali创建
- 引入依赖
<properties>
<spring-boot.version>2.1.1.RELEASE</spring-boot.version>
<dubbo.version>2.6.5</dubbo.version>
</properties>
<dependencyManagement>
<dependencies>
<!-- Spring Boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Dubbo dependencies -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo-dependencies-bom</artifactId>
<version>${dubbo.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Dubbo Spring Boot Starter -->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>${dubbo.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>2.12.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>sonatype-nexus-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
补充说明:此次引入的依赖和 服务提供者中的依赖基本一致,此处多引入
spring-boot-starter-web 依赖作为web项目使用。
编写控制层
服务接口
package com.ruoyi.system.service;
/**
* @author liangcy
* @create 2019/12/2 - 20:56
*/
public interface DemoService {
public String sayHello(String name);
}
前端Controller
package com.ruoyi.web;
import com.alibaba.dubbo.config.annotation.Reference;
import com.ruoyi.system.service.DemoService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* @author liangcy
* @create 2019/12/3 - 12:29
*/
@Controller
public class DemoController {
@Reference
private DemoService demoService;
@RequestMapping("/say")
@ResponseBody
public String say(){
String result = demoService.sayHello("jetty");
return result;
}
}
补充说明:
@Reference 注解:调用远程服务
application.properties 主配置文件
# 指定当前服务/应用的名字
dubbo.application.name=ruoyi-admin
# 指定注册中心位置
dubbo.registry.address=zookeeper://192.168.3.120:2181
# 指定通用规则(通信协议?通信端口)
dubbo.protocol.name=dubbo
dubbo.protocol.port=20880
补充说明:这个配置和服务提供者的一致,只是 dubbo.application.name不同
验证服务消费者配置是否成功
- 执行 服务提供者的 main方法
- 执行 服务消费者的main方法
- 登录到 dubbo监控中心,地址:http://192.168.3.120:8080/dubbo 用户名密码都是 root
- 配置成功截图
- 访问前台
更多推荐
所有评论(0)