Dubbo是什么

Dubbo是alibaba的一款开源软件,它是基于java的RPC调用框架。
Dubbo主要提供了三种功能:

  1. 提供了基于接口的远程调用接口
  2. 容错性和负载均衡
  3. 服务自动注册及发现

安装ZooKeeper 服务注册中心

ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
下载 ZooKeeper ,地址 http://www.apache.org/dyn/closer.cgi/zookeeper

在这就不详细写安装ZooKeeper 的步骤了,不会的安装的亲可以问度娘哟~

项目结构

SpringBootDubbo-Server

springboot-dubbo-client

SpringBootDubbo-Server代码实现

1、pom.xml文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>SpringBootDubbo-Server</groupId><artifactId>springboot-dubbo-client</artifactId><version>0.0.1-SNAPSHOT</version><!-- SpringBoot父类依赖引用 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.2.RELEASE</version></parent><properties><dubbo-spring-boot>1.0.0</dubbo-spring-boot></properties><dependencies><!-- Spring Boot Dubbo 依赖 --><dependency><groupId>io.dubbo.springboot</groupId><artifactId>spring-boot-starter-dubbo</artifactId><version>${dubbo-spring-boot}</version></dependency><!-- SpringBoot web 组件 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
</project>

2、application.properties

## Dubbo 服务提供者配置
spring.dubbo.application.name=provider
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20880
spring.dubbo.scan=com.fit

3、User.java

public class User implements Serializable{/*** */private static final long serialVersionUID = 1L;private String id;private String name;public User(String id, String name) {this.id = id;this.name = name;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}

4、Service层

public interface UserDubboService {public User getUser();
}@Service
public class UserDubboServiceImpl implements UserDubboService {public User getUser() {// TODO Auto-generated method stubUser user = new User("1","zlzhaoe");return user;}}

5、ServerApp.java

@SpringBootApplication
public class ServerApp {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubSpringApplication.run(ServerApp.class, args);}}

springboot-dubbo-client代码实现

1、pom.xml文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>SpringBootDubbo-Server</groupId><artifactId>springboot-dubbo-client</artifactId><version>0.0.1-SNAPSHOT</version><!-- SpringBoot父类依赖引用 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.2.RELEASE</version></parent><properties><dubbo-spring-boot>1.0.0</dubbo-spring-boot></properties><dependencies><!-- Spring Boot Dubbo 依赖 --><dependency><groupId>io.dubbo.springboot</groupId><artifactId>spring-boot-starter-dubbo</artifactId><version>${dubbo-spring-boot}</version></dependency><!-- SpringBoot web 组件 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
</project>

2、application.properties

## 端口号
server.port=8081
## Dubbo
spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
spring.dubbo.scan=com.fit

3、User.java

public class User implements Serializable{/*** */private static final long serialVersionUID = 1L;private String id;private String name;public User(String id, String name) {this.id = id;this.name = name;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}

4、service层

public interface UserDubboService {public User getUser();
}

5、Controller层

@RestController
public class UserController {@Referenceprivate UserDubboService userDubboService;@RequestMapping(value ="getUser")public User getUser() {// TODO Auto-generated method stubUser user = userDubboService.getUser();return user;}
}

6、启动SpringBootDubbo-Server,springboot-dubbo-client运行访问http://localhost:8081/getUser

源码下载

SpringBoot (七) :SpringBoot 整合dubbo相关推荐

  1. SpringBoot通过dubbo-spring-boot-starter整合Dubbo出现的问题

    异常信息org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestM ...

  2. 搭建大型分布式服务(十四)SpringBoot整合dubbo starter

    一.本文要点 接上文,我们已经把SpringBoot整合mybatis+Hikari+es+redis+kafka了,本文将介绍SpringBoot如何整合dubbo.系列文章完整目录 dubbo注解 ...

  3. Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! "看看星空,会觉得自己很渺小,可能我们在宇宙中从来就是一个偶然.所以,无论什么事情,仔 ...

  4. spring整合dubbo和springboot整合dubbo,实现服务暴露区别

    spring整合dubbo的时候实现服务暴露是这么做的,在xml里配置 那么springboot整合dubbo的时候,是通过dubbo的@Service 注解实现的 之前我们是通过@Autowired ...

  5. SpringBoot整合Dubbo+Zookeeper进行分布式搭建系统

    QUESTIONl:SpringBoot整合Dubbo+Zookeeper进行分布式搭建系统? ANSWER: 一:创建项目模块 1.1.创建一个Empty Project 名称:Dubbo 1.2. ...

  6. Springboot 整合 Dubbo/ZooKeeper你不知道的那点事,大神必修课

    "看看星空,会觉得自己很渺小,可能我们在宇宙中从来就是一个偶然.所以,无论什么事情,仔细想一想,都没有什么大不了的.这能帮助自己在遇到挫折时稳定心态,想得更开." – <腾讯 ...

  7. springboot整合dubbo\zookeeper做注册中心

    springboot整合dubbo发布服务,zookeeper做注册中心.前期的安装zookeeper以及启动zookeeper集群就不说了. dubbo-admin-2.5.4.war:dubbo服 ...

  8. SpringBoot 1 使用 Dubbo Initializer 快速整合 Dubbo

    前言 阿里为 SpringBoot 提供了 Dubbo Initializer 用于快速搭建 SpringBoot 和 Dubbo 的简单示例应用.本文手把手带你感受 Dubbo Initialize ...

  9. SpringBoot多模块项目整合Dubbo

    SpringBoot框架整合Dubbo有3种方式: Demo的项目结构: 1.dubbo.xml + @ImportResource注解         (1)导入包: <dependency& ...

  10. springBoot整合Dubbo使用与采坑

    参考:springBoot整合Dubbo 下载源码到:我的下载中心去下

最新文章

  1. Intellij IDEA 远程debug、远程tomcat部署项目
  2. Spring中的BeanPostProcessor接口
  3. 网关限流(令牌桶算法)
  4. 1-3docker commit定制镜像
  5. pm模型matlab算法,18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码...
  6. 智能听音公司Soundhawk获得550万美元融资,通过降噪算法让用户听到真正想听的声音
  7. oracle重做日志的信息,Oracle重做日志和日志挖掘
  8. 某计算机房空气调节系统设计,空气调节工程思考题习题答案(精品DOC)
  9. excel合并两列内容_比Excel公式快10倍,史上最牛合并表格工具来了!!
  10. 虚拟机创作ubuntu18的ISO镜像
  11. 书法在计算机中的应用,书法在计算机中的编排-西安交通大学.pdf
  12. 努比亚计科学计算机,最后6天倒计时 努比亚为您揭晓未来科技
  13. python——函数
  14. IDEA安装docker插件
  15. 台式计算机使用寿命,台式机主机一般寿命是多久?
  16. Exchange ActiveSync 配置
  17. hive报错return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
  18. Apriori算法详解及手写案例
  19. idm可以下载网页上哪些东西
  20. VisionMaster 学习笔记(USB 孔定位)

热门文章

  1. 【golang程序包推荐分享】go-ini、viper、godoc
  2. mysql6.0设置时区_关于Mysql6.0+的时区错乱问题
  3. 利用exchangelib快速上手使用python发邮件
  4. xgboost lightgbm catboost 多分类 多标签
  5. BERT可视化工具bertviz体验
  6. python中break和continue的区别
  7. 关于正则表达式 \1 \2之类的问题
  8. Linux输入输出I/O
  9. 芯片IP,SOC,FPGA智能卡
  10. TVM图优化与算子融合