Dubbo 服务实例Demo

  回国后,各个公司都对Dubbo有要求,而入职的第一份工作,是负责金融AI的工作,前期没有太多任务,主要是研究算法,因此,就在这个时间,把系统熟悉下,也让自己多学习一些架构的知识,这里折腾了一天,弄了一个Dubbo的Demo,供学习的各位参考。也是为自己复盘和日后参考使用。

  其实,说句实话,计算机的世界,技术每天都更新换代,我们不可能脑袋里记住所有的东西,因此网络上查资料,查找曾经的人遇到的同样问题,作为启发,然后进而创建自己的程序,是一个必要的方法。因此,才会有这篇分享。也许你会在使用我的文档时,遇到不可预见的问题,请先耐心百度或者谷歌查找解决方案。然后结合自己的思考。我亦会尽量保持我的代码自己可以测试通过。

Dubbo的原理,我就不写了,大家都可以查到资料。总的来说,是一个分布式服务的管理框架。

初始准备:对于刚开始创建一个Dubbo,我们要做一些本地的初始准备工作,一是安装zookeeper,可以在本地调试成功。

我用的intellij 创建的项目,所以这里截图都是Intellij模式下的。

首先创建一个Maven空白项目。其实空白项目,也可以参考我之前写的SPRING 4.0手工创建RESTFul那个文档。

项目名字,可以叫dubbo,自己决定。

之后,项目建立好以后,鼠标右键选择项目,选New,然后选择Module,创建三个Module,分别是:

  dubbo-demo-api

  dubbo-demo-provider

  dubbo-demo-consumer

对IDEA使用还不熟悉的,不知道如何建立Module的,可以网上搜索一些参考文档:https://blog.csdn.net/winy_lm/article/details/64937062

在总的POM.xml中需要添加一些关于DUBBO的依赖。这部分我会在代码上传到git上之后,大家自行下载参考。

服务接口

在API模块,写入一个基本的demo类,DemoService,封装一个接口,sayHello

package api;

public interface DemoService {

StringsayHello(String name);

}

服务实现

Provider模块要做的工作,就是对API封装的服务进行实现,然后提供给具体的消费者使用。

所以,这里主要三个工作,一是写实现类。DemoServiceImpl

public class DemoServiceImplimplements DemoService {

public StringsayHello(String name) {

return name +" test a dubbo demo";

    }

}

二是编写配置文件,将zookeeper的地址和端口配置进去,同时把我们创建的服务配置到里面,作为服务发布。

三是编写服务器启动的main方法,让服务出于启动状态。

服务消费者

消费者的作用,就是对服务的调用。所以这儿就写了一个简单的测试类

但是配置文件里面,还是要配置zookeeper的地址和对服务的引用。

这样基本的DEMO就完成了。这里我们可以测试下,先安装zookeeper,然后在本地启用。BIN目录下,会有zkServer.cmd,执行一下。

然后启动我们之前写好的provider主程序,然后在启动你的服务者,就可以看到结果了。这里打印输出了一行字符串“haifeng test a dubbo demo”

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、准备 在分析探索Dubbo架构原理之前,我们需要准备一下环境,用于后面我们来分析dubbo的架构。 1.1 Z...
    墨渊丶阅读 2,680评论 1 20
  • 0 准备 安装注册中心:Zookeeper、Dubbox自带的dubbo-registry-simple;安装Du...
    七寸知架构阅读 14,034评论 0 88
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,242评论 19 139
  • [TOC] dubbo简单教程 目录 简介环境准备下载和导入github上dubbo代码使用maven打包dubb...
    无敌小韦阅读 1,254评论 1 5
  • eg_cexwx
    宋士博阅读 261评论 0 0