目录
Dubbo是什么?
是一种高性能、轻量级、基于Java的RPC框架。Dubbo提供三个关键功能,包括基于接口的远程调用、容错和负载平衡以及服务自动注册和发现。
Dubbo组成?
- 生产者 (生产者暴露远程服务)
- 消费者 (消费者调用远程服务)
- 注册中心(服务的发现于配置)
- 监控中心(服务的调用次数与耗时)
- 容器 (管理服务的生命周期)
服务的联系
- 容器负责发布、加载、运行一个生产者服务
- 生产者在启动时注册其服务
- 消费者在启动时从注册中心订阅他需要的服务
- 注册中心返回消费者订阅的服务列表,当数据改变通过长链接推送
- 消费者基于软负载均衡算法选择生产者调用,如果失败,调用另一个
- 生产者和消费者都会在内存中计算服务调用数量和耗时,并将结果每分钟发到监控中心
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配置远程服务 remote-provide.xml 、remote-consumer.xml
<!-- define remote service bean the same way as local service bean -->
<bean id=“xxxService” class=“com.xxx.XxxServiceImpl” />
<!-- expose the remote service -->
<dubbo:service interface=“com.xxx.XxxService” ref=“xxxService” />
<!-- reference the remote service -->
<dubbo:reference id=“xxxService” interface=“com.xxx.XxxService” />
<!-- use remote service the same say as local service -->
<bean id=“xxxAction” class=“com.xxx.XxxAction”>
<property name=“xxxService” ref=“xxxService” />
</bean>
Dubbo学习--基于zk使用dubbo远程调用服务(二)

本文深入解析了Dubbo,一种高性能、轻量级的Java RPC框架。它详细介绍了Dubbo的三大核心功能:远程调用、容错与负载均衡、服务自动注册与发现。文章还阐述了Dubbo的组件构成,包括生产者、消费者、注册中心、监控中心及容器,以及它们之间的交互方式。此外,还提供了基于Spring和Zookeeper配置Dubbo服务的实例。
347

被折叠的 条评论
为什么被折叠?



