SpringBoot整合dubbo实现dubbo+zookeeper分布式
程序员文章站
2022-05-07 14:31:18
...
SpringBoot版本:2.2.1.RELEASE
1,使用docker安装zookeeper
使用docker命令下载zookeeper
docker pull zookeeper
运行zookeeper
docker run -d --name zk -p 2181:2181 {镜像ID}
2,服务提供者
创建SpringBoot工程,引入dubbo的starter依赖
<!--dubbo-stater依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
编写一个接口
package com.dufg.spring.spring_boot.server;
public interface IProductServer {
public String shopping();
}
编写该接口的实现类,并用dubbo的@Service注解(若要注册服务就必须开启该注解)
package com.dufg.spring.spring_boot.server.impl;
import com.alibaba.dubbo.config.annotation.Service;
import com.dufg.spring.spring_boot.server.IProductServer;
@Service
public class ProductServer implements IProductServer {
@Override
public String shopping() {
System.out.println("购买成功");
return "购买成功";
}
}
在SpringBoot主程序类中使用@EnableDubbo注解
@SpringBootApplication
@EnableDubbo
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3,服务消费者
创建SpringBoot工程,引入dubbo的starter依赖
<!--dubbo-stater依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
将服务提供者的接口包添加进工程中
调用方法:在类中注入该接口使用@Reference标注
@Reference
private IProductServer productServer;
然后直接调用该接口的方法即可
public String shopping(){
return productServer.shopping();
}
结果
调用成功
推荐阅读
-
Springboot 整合 Dubbo/ZooKeeper 实现 SOA 案例解析
-
springboot+redis分布式锁实现模拟抢单
-
springboot整合H2内存数据库实现单元测试与数据库无关性
-
springboot整合ehcache 实现支付超时限制的方法
-
分布式服务Dubbo+Zookeeper安全认证实例
-
Springboot整合Dubbo教程之项目创建和环境搭建
-
springboot整合H2内存数据库实现单元测试与数据库无关性
-
详解Springboot整合Dubbo之代码集成和发布
-
详解springboot整合ehcache实现缓存机制
-
springboot整合ehcache 实现支付超时限制的方法