当前位置: 首页 > 编程笔记 >

2020最新IDEA SpringBoot整合Dubbo的实现(zookeeper版)

甄志
2023-03-14
本文向大家介绍2020最新IDEA SpringBoot整合Dubbo的实现(zookeeper版),包括了2020最新IDEA SpringBoot整合Dubbo的实现(zookeeper版)的使用技巧和注意事项,需要的朋友参考一下

首先,要在电脑上安装配置好zookeeper哦~

这是我云服务器上的zookeeper状态

接下来,开始整合

1. 准备一个dubbo-api的SpringBoot项目

用来存储Entity类和Server接口的项目,配置文件无须改动。

entity – User

// Lombok注解 相当于Setter Getter toString()
@Data
public class User implements Serializable { // 序列化很重要!!!
  private static final long serialVersionUID = 7739394865008699599L; 
  private Long id;
  private String username;
  private String password;

}

service – UserService

public interface UserService {
  User getUser();
}

2. 准备一个dubbo-provider的SpringBoot项目(提供服务方)

用来存储dubbo-api 的 Server接口 的实现类

Impl – UserServiceImpl

@DubboService(version = "1.0.0")
public class UserServiceImpl implements UserService {
	// 此处的User类以及UserService接口都是来自dubbo-api中,所以需要在Maven中导入dubbo-api
  @Override
  public User getUser() {
    User user = new User();
    user.setId(1L);
    user.setUsername("root");
    user.setPassword("root");
    return user;
  }
}

application.properties !!!

server.port=8001
## Dubbo 服务提供者配置
## 名称
dubbo.application.name=provider
## Dubbo 服务对象的注册中心zookeeper的地址和端口
dubbo.registry.address=zookeeper://112.124.14.148:2181
## 注册中心请求超时,以毫秒为单位
dubbo.registry.timeout=25000
## 用Dubbo协议
dubbo.protocol.name=dubbo
## 在20880端口暴露服务
dubbo.protocol.port=20880
## 包扫描范围
dubbo.scan.base-packages=com.itzhang.Impl

3. 准备一个dubbo-consumer的SpringBoot项目(调用服务方)

用来存Controller层

controller – UserController

@RestController
@RequestMapping("/user")
public class UserController {

  @DubboReference(version = "1.0.0")
  private UserService userService;

  @RequestMapping("/getUser")
  public User getUserList() {
    return userService.getUser();
  }
}

application.properties !!!

## 不要和provider项目端口冲突
server.port=7001
## Dubbo 服务消费者配置
dubbo.application.name=consumer
## Dubbo 服务对象的注册中心zookeeper的地址和端口
dubbo.registry.address=zookeeper://112.124.14.148:2181
## 服务对象的被注入的包扫描范围
dubbo.scan.base-packages=com.itzhang.controller
## 请求超时
dubbo.registry.timeout=25000

3. 测试

首先启动dubbo-provider

其次启动dubbo-consumer

访问dubbo-consumer中controller提供的接口。完整路径:http://localhost:7001/user/getUser,输出结果并且zookeeper中已成功注册,配置成功!

到此这篇关于2020最新IDEA SpringBoot整合Dubbo(zookeeper版)的文章就介绍到这了,更多相关IDEA SpringBoot整合Dubbo内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 本文向大家介绍Springboot 整合 Dubbo/ZooKeeper 实现 SOA 案例解析,包括了Springboot 整合 Dubbo/ZooKeeper 实现 SOA 案例解析的使用技巧和注意事项,需要的朋友参考一下 一、为啥整合 Dubbo 实现 SOA Dubbo 不单单只是高性能的 RPC 调用框架,更是 SOA 服务治理的一种方案。 核心: 远程通信,向本地调用一样调用远程方法。

  • 主要内容:一、Dubbo整合Zookeeper实现注册服务源码解析,二、手动实现整合Zookeeper实现服务注册与发现,1. 使用zookeeper注册中心替换map,2. 整合curator,3. 提供watcher机制一、Dubbo整合Zookeeper实现注册服务源码解析         Dubbo可以借助zk来实现服务的发现与注册,  服务需要引入依赖: 依赖 说明 dubbo-registry-zookeeper  提供服务发现与注册 dubbo-configcenter-zooke

  • 本文向大家介绍Spring Cloud Alibaba和Dubbo融合实现,包括了Spring Cloud Alibaba和Dubbo融合实现的使用技巧和注意事项,需要的朋友参考一下 服务提供者 创建一个名为 hello-dubbo-nacos-provider 的服务提供者项目 POM 该项目下有两个子模块,分别是 hello-dubbo-nacos-provider-api 和 hello-d

  • 本文向大家介绍springboot2.0整合dubbo的示例代码,包括了springboot2.0整合dubbo的示例代码的使用技巧和注意事项,需要的朋友参考一下 写在前面: 使用springboot作为web框架,方便开发许多,做分布式开发,dubbo又不可少,那么怎么整合在一起呢, 跟我学一遍,至少会用 注意,springboot2.0和springboot1.x与dubbo整合不一样, 1.

  • 本文向大家介绍SpringBoot中dubbo+zookeeper实现分布式开发的应用详解,包括了SpringBoot中dubbo+zookeeper实现分布式开发的应用详解的使用技巧和注意事项,需要的朋友参考一下 总体实现思路是启动一个生产者项目注册, 将所含服务注册到zookeeper的注册中心, 然后在启动一个消费者项目,将所需服务向zookeeper注册中心进行订阅, 等待注册中心的通知

  • 主要内容:概述,源码解析,注入依赖概述 Dubbo中也支持Spring AOP类似功能,通过装饰者模式,使用包装类包装原始的扩展点实例。在扩展点实现前后插入其他逻辑,实现AOP功能。说这很绕口啊,那什么是包装类呢?举个例子你就知道了 这里的插入扩展逻辑,是不是就是实现了AOP功能呢?比如说Protocol类,有2个Wrapper,分别是ProtocolFilterWrapper和ProtocolListenerWrapper,我们