如何入手 dubbo

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介:

分布式服务是个很大的概念,也许你正纠结于能够从哪下手学习这门“技术”,甚至你已经拿到了alibaba 分布式服务框架的源代码,并稍微阅读了下dubbo 用户指南,但迟迟没有去研究它或者不知如何下手。造成这种情况的原因不难理解,一是你认为它很复杂,没人指点你可能开不了端,可能你拿到源码确编译总有错误,二是你没有认真读完 dubbo 用户指南,同时缺少技术了解广度,三是你所在的公司没有用到类似的框架。

       本人是在公司看了使用的类似的框架源码后,并加入 dubbo技术群请教一些幼稚的问题后给自己一些信心后,终于对 dubbo 开了个端。废话不多说,来真的。

       首先,我强烈建议你用 idea 并熟悉 maven,从 github 拉下来的代码模块如下:

 

通读 dubbo 用户指南后,发现整个框架由Register+Service/Provider+Consumer+Monitor组成,作为高性能的 分布式RPC方案,里面自然充斥着各种通讯协议,如 duddo 协议、http、rmi、hessian、ws 等,以及用于分布式的负载均衡算法-随机、最少调用、一致性 hash,还有集群容错机制-failover,failfast,failsafe,failback,forking。奥,对了,dubbo 协议是 dubbo封装的高性能 NIO 通讯协议。

没有 Register, 那 consumer 就是直连 provider,这样不太好玩。用户指南上提了几种注册中心实现方式,推荐 zookeeper 方式,不要因为完全不了解 zk 就不往下玩了。

 

从 zookeeper 官网下载最新版 zookeeper-3.4.7.tar.gz,解压后Linux 和 Windows 均适用,进入 conf 目录将 zoo-sample.cfg改名为 zoo.cfg,然后进入 bin 启动 zk 服务:

linux: ./zkServer.sh start      提示Starting zookeeper ... STARTED表示成功启动。

现在我们在 idea 里什么都不用做,直接用 tomcat 启动 dubbo-admin,浏览器打开后已 root/root 登录显示如下

 

 

 

 
 现在我们启动服务,把 dubbo-demo 下 provider 里 test 下dubbo.properties 里的

dubbo.registry.address=multicast://224.5.6.7:1234 改为
dubbo.registry.address=zookeeper://127.0.0.1:2181
启动 main 方法便能启动 provider,同样修改配置后启动 consumer,控制台输出:

00:36:01] Hello world4821, response form provider: 192.168.1.7:20880

表示调用成功。admin 显示如下:



 

OTHER:

判断 zookeeper 有没有启动:

localhost:zookeeper-3.4.7 javahongxi$ ./bin/zkServer.sh status

ZooKeeper JMX enabled by default

Using config: /usr/local/zookeeper-3.4.7/bin/../conf/zoo.cfg

Mode: standalone 

 

对dubbo有了初步了解后,我们应该参考dubbo.io里的“开发者指南”去研究。



原文链接:[http://wely.iteye.com/blog/2269518]

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
7月前
|
缓存 负载均衡 Dubbo
Dubbo 第二节_ Dubbo的基本应用与高级应用
官⽹地址:http://dubbo.apache.org/zh/docs/v2.7/user/examples/loadbalance/ 如果在消费端和服务端都配置了负载均衡策略,以消费端为准。 这其中⽐较难理解的就是最少活跃调⽤数是如何进⾏统计的? 讲道理,最少活跃数应该是在服务提供者端进⾏统计的,服务提供者统计有多少个请求正在执⾏中。 但在Dubbo中,就是不讲道理,它是在消费端进⾏统计的,为什么能在消费端进⾏统计? 逻辑是这样的:官⽹地址:http://dubbo.apache.org/zh/docs
|
1月前
|
负载均衡 监控 Dubbo
Dubbo 实现原理详解,一文吃透!
本文深入解析Dubbo的底层实现原理,涵盖远程方法调用、智能容错和负载均衡、服务注册和发现三大核心功能,详解其架构设计和调用流程。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
Dubbo 实现原理详解,一文吃透!
|
7月前
|
负载均衡 监控 Dubbo
秒懂Dubbo接口(原理篇)
【4月更文挑战第25天】秒懂Dubbo接口(原理篇)
256 3
秒懂Dubbo接口(原理篇)
|
7月前
|
负载均衡 Dubbo Java
Dubbo 第一节_ Dubbo框架介绍与手写模拟Dubbo 第二节_ Dubbo的基本应用与高级应用
官⽹地址:http://dubbo.apache.org/zh/docs/v2.7/user/examples/generic-service/官⽹地址:http://dubbo.apache.org/zh/docs/v2.7/user/examples/local-mock/官⽹地址:http://dubbo.apache.org/zh/docs/v2.7/user/examples/async-call/
100 2
|
缓存 监控 负载均衡
将近2万字的Dubbo原理解析,彻底搞懂dubbo
市面上有很多基于RPC思想实现的框架,比如有Dubbo。今天就从Dubbo的SPI机制、服务注册与发现源码及网络通信过程去深入剖析下Dubbo。
25765 9
|
负载均衡 Dubbo 网络协议
|
负载均衡 监控 Dubbo
我太喜欢Dubbo的设计了
Dubbo是阿里巴巴开源的一款高性能、轻量级的分布式服务框架。Dubbo提供了服务治理、负载均衡、容错等功能,让开发者可以更方便地实现分布式系统。
82 0
|
存储 开发框架 负载均衡
Dubbo框架知识点
Dubbo框架知识点
109 0
|
缓存 Dubbo Java
初识Dubbo及简单案例使用
初识Dubbo及简单案例使用
初识Dubbo及简单案例使用
|
Dubbo Java 应用服务中间件
Dubbo——Dubbo中的常用标签、服务化最佳实践
Dubbo——Dubbo中的常用标签、服务化最佳实践
Dubbo——Dubbo中的常用标签、服务化最佳实践
下一篇
DataWorks