dubbo3种调用:spring(xml文件、代码配置两种)、generic泛化调用、Telnet(命令行、代码两种)、zookeeper获取服务以及服务的子级信息

本文详细介绍了Dubbo的三种调用方式:Spring(XML配置和代码配置)、Generic泛化调用以及Telnet调用。同时,讲解了如何通过Zookeeper获取服务信息,包括服务的IP、端口等。内容涵盖Dubbo的基础概念、架构以及调用过程中的注意事项和性能影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 引包
不用spring的包,用dubbo原生的包,添加包完成之后,刷新maven工程
1.1 dubbo的包

<dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>dubbo</artifactId>
 <version>2.6.5</version>
 <exclusions>
 <exclusion>
 <groupId>org.springframework</groupId>
 <artifactId>spring</artifactId>
 </exclusion>
 </exclusions>
</dependency>

1.2 zookeeper的包

<dependency>
 <groupId>com.101tec</groupId>
 <artifactId>zkclient</artifactId>
 <version>0.10</version>
 <exclusions>
 <exclusion>
 <groupId>org.slf4j</groupId>
 <artifactId>slf4j-api</artifactId>
 </exclusion>
 <exclusion>
 <groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
 </exclusion>
 <exclusion>
 <groupId>log4j</groupId>
 <artifactId>log4j</artifactId>
 </exclusion>
 </exclusions>
</dependency>

1 dubbo是什么?
是一个分布式的服务框架——>微服务
2 dubbo能做什么
2.1 透明化的远程方法调用,调用远程方法就跟调用本地方法一样
2.2 软负载均衡及容错机制,服务集群,动态增加、减少服务器
2.3 服务自动注册与发现
3 dubbo与http的区别
3.1 http好比普通话,rpc好比团伙内部黑话
讲普通话的好处就是谁都听得懂,谁都会讲
讲黑话好处是更精简、保密、可定制;坏处就是要求client也要懂,并且大家都说一种黑话了,再换就困难了
4 为什么要用rpc
4.1 因为良好的rpc是面向服务的封装,针对服务的可用性和效率都做了优化,单纯使用http调用则缺少这些特性
4.2 http可以过防火墙,可以利用各种丰富的分析工具,http是文本协议,适合短连接,http跨网络易扩展
4.3 dubbo通讯层用的netty走socket,socket是二进制协议,安全性更高,数据有效率更高
5 socket在http的下一层
6 dubbo的架构

第一层:
							Registry			注册中心
第二层:
							Consumer		    客户端
       						Provider			服务提供者
	   						Container    		容器
第三层:
						    monitor             监控

6.1 服务提供者Provider发布一个服务后会把这个服务注册到注册中心Registry
可以在注册中心看有哪些服务(就是一个服务管理的地方)
服务行右侧的no Consumer就是还没有客户端连接到该服务上
6.2 同样一个Consumer想要消费(调用一个服务的时候),该Consumer也会注册到注册中心上,并且之间是长连接的关系
7 dubbo的配置
dubbo是采用全spring配置方式,对应用没有任何api的侵入,只需要加载dubbo的配置即可(就是引包即可),dubbo基于spring的schema扩展进行加载
7.1 schema是.xml文件中最上面的那部分,如下图:xml文件中能使用哪些标签都是通过下图中的schema定义的
在这里插入图片描述

8 举例

房产拥有者 = 服务提供者(因为他有房源)
中介 = 注册中心
买房的人 = 客户端(服务的消费方)
房产拥有者将房子挂在中介
买房的人也是去中介找房子
中介将房产拥有者与买房的人联系起来

9 注册中心
注册中心是zookeeper,也是一个中间件,用来注册服务于负载均衡的
zookeeper通过心跳机制可以检测宕机的(挂掉的、已经停止运行的)服务器,并将挂掉的服务器IP与服务对应关系从列表中删除
10 dubbo的调用
10.1 集成spring(研发人员调用dubbo接口都是采用集合spring的调用方式)
10.2 generic泛化调用
10.3 Telnet调用
作为服务的发布者都是采用第一种方式发布
作为服务的消费者可以用3种方式调用
dubbo比较

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值