极简配置的dubbo入门

  由于公司项目要用到dubbo,故自己对dubbo进行了简单地学习,并做个学习记录。关于dubbo的文档内容这里不做介绍,有兴趣可以去官网进行查看 http://dubbo.apache.org/zh-cn/docs/user/quick-start.html 。好了,废话不多说,开始记录。


一、准备工作

1.环境:jdk1.8.0_181,maven3.5.4,Tomcat8.0.53

2.IDE:Spring-Tool-Suite-3.9.5(eclipse、myeclipse都可以,能用就行)

3.zookeeper-3.4.13(http://mirrors.shu.edu.cn/apache/zookeeper/zookeeper-3.4.13/


二、创建maven工程

工程结构
  创建mydubbo工作组,在工作组下按顺序分别创建四个项目mydubbo-demo、mydubbo-demo-api、mydubbo-demo-provider和mydubbo-demo-consumer。

1.创建mydubbo-demo工程(new maven project —> create a simple project),作为主工程,用于引入公共的依赖

<properties>
  <dubbo.version>2.6.3</dubbo.version>
  <zookeeper.version>3.4.13</zookeeper.version>
  <curator.version>4.0.1</curator.version>
</properties>

<dependencies>
  <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>dubbo</artifactId>
    <version>${dubbo.version}</version>
  </dependency>

  <dependency>
    <groupId>org.apache.zookeeper</groupId>
    <artifactId>zookeeper</artifactId>
    <version>${zookeeper.version}</version>
  </dependency>
		
  <dependency>
    <groupId>org.apache.curator</groupId>
    <artifactId>curator-framework</artifactId>
    <version>${curator.version}</version>
  </dependency>
		
</dependencies>

2.创建mydubbo-demo-api工程,定义公共接口
  右键单击mydubbo-demo工程,选择Maven —> New Maven Module Project,创建mydubbo-demo工程的子项目。

定义接口
定义接口

3.创建mydubbo-demo-provider工程,作为接口的实现方、服务的提供方
  同样,创建的是mydubbo-demo工程的子项目。

添加接口依赖

<dependency>
  <groupId>com.lzc.dubbo</groupId>
  <artifactId>mydubbo-demo-api</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</dependency>

接口实现
接口实现
xml配置dubbo信息 —— mydubbo-demo-provider.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
       xmlns="http://www.springframework.org/schema/beans"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
       http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">

	<!-- 定义提供方的应用名,用于追踪依赖关系。 -->
	<dubbo:application name="mydubbo-demo-provider" />

	<!-- 使用 multicast 注册中心暴露服务 -->
	<dubbo:registry address="multicast://224.5.6.7:1234"/>
	<!-- 使用 zookeeper 注册中心暴露服务;需要先开启zookeeper -->
	<!-- <dubbo:registry address="zookeeper://localhost:2181" /> -->

	<!-- 用dubbo协议在20880端口暴露服务 -->
	<dubbo:protocol name="dubbo" port="20880" />

	<!-- 具体实现的service -->
	<bean id="helloService"	class="com.mydubbo.demo.provider.HelloServiceImpl" />

	<!-- 用于暴露的service接口 -->
	<dubbo:service interface="com.mydubbo.demo.api.HelloService" ref="helloService" />

</beans>

启动服务,得到运行结果
启动提供方得到运行结果

4.创建mydubbo-demo-consumer工程,作为接口的调用方、服务的消费方
  同样,创建的是mydubbo-demo工程的子项目。

添加接口依赖

<dependency>
  <groupId>com.lzc.dubbo</groupId>
  <artifactId>mydubbo-demo-api</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</dependency>

xml配置dubbo信息 —— mydubbo-demo-consumer.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
       xmlns="http://www.springframework.org/schema/beans"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
       http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">

	<!-- 定义消费者的应用名,用于追踪依赖关系。(不是匹配规则,不要和提供方的应用名一样) -->
	<dubbo:application name="mydubbo-demo-consumer" />

	<!-- 使用 multicast 注册中心发现/订阅服务 -->
	<dubbo:registry address="multicast://224.5.6.7:1234"/>
	<!-- 使用 zookeeper 注册中心发现/订阅服务;需要先开启zookeeper -->
	<!-- <dubbo:registry address="zookeeper://localhost:2181" /> -->

	<!-- 为远程服务生成代理 -->
	<dubbo:reference id="helloService" interface="com.mydubbo.demo.api.HelloService"/>

</beans>

启动服务得到运行结果
启动消费方得到运行结果
以上,采用multicast广播注册中心的方式就完成了,下面将使用zookeeper。


三、安装并启动zookeeper

1.将下载好的zookeeper解压到自己喜欢的路径下,到conf目录下,将zoo_sample.cfg重命名为zoo.cfg,进入编辑模式,补上下面两行配置,

dataDir=D:\\tools\\MyProgram\\zookeeper\\myData\\data
dataLogDir=D:\\tools\\MyProgram\\zookeeper\\myData\\log

dataDir,表示保存数据的目录,dataLogDir表示保存数据日志的目录。其它配置暂时默认。进入bin目录,启动zkServer.cmd。

2.将provider和consumer工程中断,把dubbo中的注册中心换成zookeeper,然后再依次启动provider和consumer服务,看到控制台成功输出,代表使用zookeeper方式的服务启动成功。


四、使用zookeeper的客户端查看zookeeper使用情况

1.下载ZooInspector。(本站或者网上资源很多,我不知道最开始的来源属于哪里,这里就不贴链接了)

2.解压并进入build目录,双击zookeeper-dev-ZooInspector.jar打开客户端。

3.点击Connect图标,如果没有改动zookeeper的端口,直接默认点击确定就行了。
新建连接
zookeeper使用情况


五、使用dubbo-admin管理dubbo服务

1.下载dubbo-admin。(我使用的是dubbo-admin-2.5.4.war,同样地,这里就不贴链接了)

2.将下载好的war包放到Tomcat下,启动Tomcat。

3.访问http://localhost:8080/dubbo-admin-2.5.4 ,输入账号、密码(都是root)
首页
服务
应用
服务治理的选项


代码已上传到csdn,https://download.csdn.net/download/charleyzz/10702431

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值