开篇之前,先来了解下dubbo服务治理与技术架构,直接看图

dubbo技术架构图:

1. 新建dubbo项目,目录结构如下

代码说明:

1.代码分为Provider(服务提供方)与consumer(服务订阅方)两块
2.服务提供方Provider提供服务,服务通过接口定义,订阅方也需要引入接口定义,故可以把接口定义拿出来,单独创建项目存放,构建好后,可以放到私有仓库中,供各个相关服务项目引用
3.dubbo通过动态代理方式,构建服务接口的实例对象进行服务调用

2. 添加dubbo依赖,采用consul做注册中心,默认zookeeper

3. 服务注册方式,先采用推荐方式xml,没有使用注册中心

  • 在resource文件夹下,创建META-INF.spring文件夹,在文件夹下,创建provider.xml文件

  • 创建service接口及实现

4. 创建consumer客户端程序,配置好文件,同provider

  • 在resource文件夹下,创建META-INF.spring文件夹,在文件夹下,consumer.xml文件

  • 在程序注入口出,构建IHelloService服务,调用服务方法

5. 运行provider和consumer

  • Provider:

  • Consumer客户端:

  • 成功调用了helloBoy方法

6. 使用zookeeper为注册中心

  • 修改配置文件,zookeeper地址:192.168.231.132:2181
  • 修改provider和consumer配置文件:

  • 如果是 zookeeper 集群的话,使用下面的方式
      <dubbo:registry protocol="zookeeper" address="192.168.11.129:2181,192.168.11.137:2181,192.168.11.138:2181"/>
  • 运行provider,报错

  • 需要引入curator包(curator-framework和curator-recipes)

  • 运行还报错(zookeeper not connected)



    解决:配置文件,添加超时时间

  • 运行provider成功

  • 运行Consumer成功

参考文献:

Dubbo入门到实战:https://segmentfault.com/a/1190000019896723

Demo代码仓库:

https://gitee.com/xujk-27400861/springboot-dubbo/

dubbo学习实践(2)之Dubbo入门Demo的更多相关文章

  1. dubbo学习实践(4)之Springboot整合Dubbo及Hystrix服务熔断降级

    1. springboot整合dubbo 在provider端,添加maven引入,修改pom.xml文件 引入springboot,版本:2.3.2.RELEASE,dubbo(org.apache ...

  2. dubbo 学习(5) dubbo多协议和多注册中心

    转载 http://blog.csdn.net/songjinbin/article/details/49498431 一.配置dubbo多协议模式 1.默认协议 Dubbo缺省协议采用单一长连接和N ...

  3. Dubbo学习笔记2:Dubbo服务提供端与消费端应用的搭建

    Demo结构介绍 Demo使用Maven聚合功能,里面有三个模块,目录如下: 其中Consumer模块为服务消费者,里面TestConsumer和consumer.xml组成了基于Spring配置方式 ...

  4. Dubbo学习笔记6:Dubbo增强SPI与SPI中扩展点自动包装的实现原理

    在Dubbo整体架构分析中介绍了Dubbo中除了Service和Config层为API外,其他各层均为SPI,为SPI意味着下面各层都是组件化可以被替换的,也就是扩展性比较强,这也是Dubbo比较好的 ...

  5. Dubbo学习笔记5:Dubbo整体框架分析

    Dubbo的分层架构 本文将简单介绍Dubbo的分层架构设计,如下图是Dubbo官方的整体架构图: Dubbo官方提供的该架构图很复杂,一开始我们没必要深入细节,下面我们简单介绍下其中的主要模块. 其 ...

  6. Dubbo学习笔记3:Dubbo管理控制台与监控中心的搭建

    Dubbo源码下载与编译 本文来讲下如何在Dubbo源码编译后,得到用于搭建管理控制台的war包和监控平台的jar包. 首先需要到Github上下载Dubbo的源码,解压后如下: 在dubbo-2.5 ...

  7. dubbo学习实践(3)之Dubbo整合Consul及Dubbo配置方式

    前言:上一篇中,已经写到了使用zookeeper为注册中心的配置,下面写下配置Consul为注册中心 1. Consul注册中心验证 修改provider和consumer的服务配置文件 Provid ...

  8. dubbo学习实践(5)之Dubbo-Admin元数据中心配置(zookeeper&Redis&Consul)

    1.Dubbo2.7.8元数据中心配置zookeeper版 前面文章已经写到了dubbo-admin管理平台的docker版配置及dubbo服务注册与调用,这篇文章记录dubbo元数据中心配置 翻开d ...

  9. dubbo学习实践(1)之管理控制台Dubbo-admin部署

    1.Docker拉取现有镜像,构建Dubbo-admin 拉取镜像,这里使用chenchuxin/dubbo-admin docker pull chenchuxin/dubbo-admin 注册中心 ...

随机推荐

  1. keycloak~自定义redirect_uri的方法

    在使用keycloak集成springboot的过程中,对于需要授权访问的接口,它会跳到keycloak里进行登录,之前有个redirect_uri,登录成功后会跳回本客户端,而这个地址默认没有修改的 ...

  2. ACM金牌选手整理的【LeetCode刷题顺序】

    算法和数据结构知识点图 首先,了解算法和数据结构有哪些知识点,在后面的学习中有 大局观,对学习和刷题十分有帮助. 下面是我花了一天时间花的算法和数据结构的知识结构,大家可以看看. 后面是为大家 精心挑 ...

  3. JS中的单例模式及单例模式原型类的实现

    单例模式 单例模式的定义: 保证一个类只有一个实例,并提供一个访问它的全局访问点 通过一个简单的例子来了解单例模式的作用: class Div { constructor() { return doc ...

  4. WPF教程八:如何更好的使用Application程序集资源

    这一篇单独拿出来分析这个程序集资源,为的就是不想让大家把程序集资源和exe程序强关联,因为程序集资源实际上是二进制资源,后续编译过程中会被嵌入到程序集中,而为了更方便的使用资源,我们要好好梳理一下程序 ...

  5. CTF文件包含

    <?php include "flag.php"; $a = @$_REQUEST['hello']; eval( "var_dump($a);"); s ...

  6. NOIP 模拟赛 day5 T2 水 故事题解

    题目描述 有一块矩形土地被划分成 \(\small n×m\) 个正方形小块.这些小块高低不平,每一小块都有自己的高度.水流可以由任意一块地流向周围四个方向的四块地中,但是不能直接流入对角相连的小块中 ...

  7. chown、chgrp 改变所有者、所属组

    chown [option] [所有者][:[所属组]] file... chown指定文件的拥有者或者所属组,可以通过用户名或者用户id.组名.组id来修改,同时可以修改多个文件,文件以空格分割,支 ...

  8. 剖析:如何用 SwitchUI 5天写一个微信 —— 聊天界面篇

    前置资源 GitHub: SwiftUI-WeChatDemo 第零章:用 SwiftUI 五天组装一个微信 - wavky - 博客园 整体结构 UI 部分代码分布如上图所示,App 的主入口类为 ...

  9. java课堂动手动脑及课后实验总结

      动手动脑一:枚举   输出结果: false false true SMALL MEDIUM LARGE 分析和总结用法 枚举类型的使用是借助ENUM这样一个类,这个类是JAVA枚举类型的公共基本 ...

  10. 大疆M3508、M2006必备CAN总线知识与配置方法

    使用大疆M3508.M2006的CAN总线知识与配置方法 目录 使用大疆M3508.M2006的CAN总线知识与配置方法 前言: 0x00 需要额外的CAN收发器!!! 0x01 硬件层面分析 为什么 ...