Dubbo学习笔记(一)--- Dubbo简介和zookeeper的安装

203 阅读2分钟

Dubbo官网地址:

dubbo.apache.org/en-us/

Dubbo用户文档:

dubbo.apache.org/en-us/docs/…

Zookeeper官网地址:

zookeeper.apache.org/

简介

Dubbo(读音[ˈdʌbəʊ])是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。

Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

参考:百度百科

Zookeeper下载

在Dubbo中官方推荐用zookeeper作为注册中心,我们来下载安装Apache ZooKeeper 3.4.14(如需3.5以上版本,需要下载标记指示编译后的版本)

访问官网,点击Getting Started下的Download

1.下载后解压zookeeper-3.4.14.tar.gz

2.双击运行bin目录下的zkServer.cmd (Linux系统是zkServer.sh)

3.我们会发现运行过程中一闪而过,说明启动出错

4.使用编辑工具打开zkServer.cmd 文件在末尾加pause

5.再次双击zkServer.cmd运行,查看报错信息

报错信息意思是conf下的zoo.cfg文件未找到。

2020-09-07 15:19:44,974 [myid:] - ERROR [main:QuorumPeerMain@88] - Invalid config, exiting abnormally
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing C:\Users\12583\Desktop\zookeeper-3.4.14\zookeeper-3.4.14\bin\..\conf\zoo.cfg

6.找到conf目录:

有个zoo_sample.cfg文件,这个是一个demo文件,zookeeper官方的意思,这个是一个demo配置文件,我们可以自定义配置,所以直接把 zoo_sample.cfg改成zoo.cfg即可;

7.再次启动bin目录下的zkServer.cmd

启动成功!

Dubbo 用法本地服务 Spring 配置

local.xml:

<bean id=“xxxService” class=“com.xxx.XxxServiceImpl” />
<bean id=“xxxAction” class=“com.xxx.XxxAction”>
    <property name=“xxxService” ref=“xxxService” />
</bean>

远程服务 Spring 配置

在本地服务的基础上,只需做简单配置,即可完成远程化:

将上面的 local.xml 配置拆分成两份,将服务定义部分放在服务提供方 remote-provider.xml,将服务引用部分放在服务消费方 remote-consumer.xml。

并在提供方增加暴露服务配置 ,在消费方增加引用服务配置 。

remote-provider.xml:

<!-- 和本地服务一样实现远程服务 -->
<bean id=“xxxService” class=“com.xxx.XxxServiceImpl” /> 
<!-- 增加暴露远程服务配置 -->
<dubbo:service interface=“com.xxx.XxxService” ref=“xxxService” />

remote-consumer.xml:

<!-- 增加引用远程服务配置 -->
<dubbo:reference id=“xxxService” interface=“com.xxx.XxxService” />
<!-- 和本地服务一样使用远程服务 -->
<bean id=“xxxAction” class=“com.xxx.XxxAction”> 
<property name=“xxxService” ref=“xxxService” />
</bean>

点关注、不迷路

如果觉得文章不错,欢迎关注点赞收藏,你们的支持是我创作的动力,感谢大家。

如果文章写的有问题,请不要吝啬,欢迎留言指出,我会及时核查修改。

如果你还想更加深入的了解我,可以微信搜索「java小白逆袭之路」进行关注。回复「福利」即可获得2000G的java从入门到大神所需干货。每天推送技术文章,让你的上下班路不在孤独,而且每月还有送书活动,助你提升硬实力!