赞
踩
提示:这里可以添加学习目标
例如:
提示:这里可以添加要学的内容
例如:
提示:这里统计学习计划的总量
例如:
1.生产者(服务提供者)
1.1 pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dubbo.version>2.7.3</dubbo.version> <zkclient.version>0.10</zkclient.version> <curator.version>2.13.0</curator.version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>${zookeeper.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>${dubbo.version}</version>
</dependency>
<dependency>
<groupId>com.101tec</groupId>
<artifactId>zkclient</artifactId>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>${curator.version}</version>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
1.2 application.yml
server:
port: 10202
dubbo:
application:
name: provier-server
registry:
address: zookeeper://注册中心地址:端口
protocol:
name: dubbo
port: 28081
1.3 启动类
@EnableDubbo
@SpringBootApplication
public class DubboProvider {
public static void main(String[] args) {
SpringApplication.run(DubboProvider.class);
}
}
1.4 需要暴露的接口
public interface TickApi {
String getTick();
}
1.5 接口实现
@Component
@Service(version="1.0.0")//dubbo中的注解
public class TickApiService implements TickApi {
@Autowired
private TickService tickService;
@Override
public String getTick() {
return tickService.getTick();
}
}
@Service//spring注解
public class TickService {
public String getTick() {
return "tick"+UUID.randomUUID().toString().replace("-","");
}
}
启动工程,再dubbo中可以看到

2.消费者
2.1 pom.xml 文件同上
2.2 application.yml
server:
port: 10203
dubbo:
application:
name: consumer-server
registry:
address: zookeeper://101.43.49.178:21810
protocol:
name: dubbo
port: 28080
2.3 启动了同上
2.4 消费服务
@RestController
@RequestMapping
public class UserController {
//注解为dubbo提供
@Reference(version = "1.0.0")
private TickApi tickApi;
@GetMapping("tick")
public String getTick(){
return tickApi.getTick();
}
}
2.5 启动服务,能再dubbo admin中查看

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。