Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

沙海
沙海
沙海
994
文章
2
评论
2021年4月28日12:06:19
评论
2 2226字阅读7分25秒
摘要

Dubbo-Spring-Boot

Dubbo-Spring-Boot

Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

闪耀的瞬间
2018-08-28 11:10:18
Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客
814

Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

收藏

1

分类专栏:
java
spring boot
SpringBoot 项目开发
文章标签:
dubbo

版权

Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客
1.dubbo分2种方式与项目集成,1.通过Spring配置方式,2.SpringBoot方式

dubbo架构图 Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

节点 角色说明
Provider 暴露服务的服务提供方
Consumer 调用远程服务的服务消费方
Registry 服务注册与发现的注册中心
Monitor 统计服务的调用次数和调用时间的监控中心
Container 服务运行容器

调用关系说明

  • 1.服务容器负责启动,加载,运行服务提供者。
  • 2.服务提供者在启动时,向注册中心注册自己提供的服务。
  • 3.服务消费者在启动时,向注册中心订阅自己所需的服务。
  • 4.注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。

    服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。

    服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

  • 5.Dubbo 架构具有以下几个特点,分别是连通性、健壮性、伸缩性、以及向未来架构的升级性。

2.前置条件,需先启动 zookeeper 与 dubbo-admin ,请先看官方文档

  • zookeeper的安装网上有很多,大致步骤是 1.解压zookeeper包,2.在conf目录下添加zoo.cfg配置文件,3.在bin目录下通过命令启动zkServer.cmd(linux下:./zkServer.sh start ),下载地址:链接:https://pan.baidu.com/s/1R2uIuYF3llsnFpCT7h-BxQ 密码:n2cl
  • dubbo-admin主要包含:路由规则,动态配置,服务降级,访问控制,权重调整,负载均衡,等管理功能,需通过maven,编译代码,得到dubbo-admin.jar包,编译时可以修改application.properties中的属性,下载地址:https://github.com/apache/incubator-dubbo-ops,进入根目录,执行:mvn clean package -Dmaven.test.skip=true 命令打包

3.建议上面的两种方式都创建个demo玩一下,我在第一种方式下通过eclipse下运行 服务提供者与消费者的java文件进行请求没有问题,但打包后启动时报错了
4.本篇分享通过 SpringBoot 来集成dubbo,dubbo官方开了一个dubbo-spring-boot的项目,我们只需要引入依赖与配置即可运行项目

  • 1.创建项目,用 IDEA 先创建一个java项目,在此项目下创建3个maven项目,再把这个java项目添加 Add Framework Support Maven支持

    dubbo-common:公共服务接口,定义服务接口,服务模型,服务异常,POJO等均放在 Common-API 包中

    dubbo-consumer:服务消费者,配置zookeeper地址与服务提供者信息后,调用服务接口

    dubbo-provider:服务提供者,对服务接口进行实现,配置暴露服务端口

    Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

  • 2.按照官方文档,Dubbo Spring Boot 工程 中的步骤,对应的引入依赖,创建接口与实现,配置好服务提供者与消费者的配置信息,复制官方的代码就好
  • 3.启动zookeeper与dubbo-admin,启动项目,访问服务消费者

    Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

  • 4.重点是打包,在项目目录下通过cmd窗口,注意:先在最外层根项目下进行mvn install,再打包dubbo-common,再服务提供者与消费者,直接通过IDEA的maven插件打包一直报错,不知道为什么。
  • 5.项目的依赖与引用关系,请查看我的源码,https://github.com/zhuyu19911016/spring-web/tree/master/dubbospringboot,不想创建项目的也可以下载源码,启动zookeeper后,通过上面第4步,直接打包或运行项目,访问消费者即可看到效果

启动服务提供者后,可以在dubbo-admin后台看到提供者信息 Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

下面4个cmd窗口,分别是zookeeper、dubbo-admin、dubbo-provider、dubbo-consumer Dubbo-Spring-Boot_zhuyu19911016520-CSDN博客

最重要的是动手,跟着官方文档与源码和网上的教程创建个demo玩一玩 以上是单机版的dubbo服务,还有dubbo官方文档中开发时用到的高级功能还未体验,zookeeper集群多注册中心,dubbo-provider与dubbo-consumer多部署,负载均衡、分组聚合等等

跟着官方文档遇到问题的朋友可以看我的源码:https://github.com/zhuyu19911016/spring-web/tree/master/dubbospringboot

继续阅读
weinxin
资源分享QQ群
本站是一个IT技术分享社区, 会经常分享资源和教程; 分享的时代, 请别再沉默!
沙海
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: