java netty和dubbo_Netty实现dubbo的原理

引言

微服务最核心的注册服务,以前一直用的springcloud,在听了网络视频对dubbo的讲解后加深理解,看了csdn讲解后还原了代码实现。

框架理论

Dubbo特点:

是一个RPC框架,SOA框架

底层采用mina,netty长连接进行传输!典型的provider和cusomer模式!

有服务治理功能,提供服务的注册和发现!用zookeeper实现注册中心!

原理:

启动时候服务端会把所有接口注册到注册中心,并且订阅configurators,服务消费端订阅provide,configurators,routers,订阅变更时,zk会推送providers,configuators,routers,启动时注册长连接,进行通讯!proveider和provider启动后,后台启动定时器,发送统计数据到monitor(监控中心)!提供各种容错机制和负载均衡策略!!

图解:

盗图,zookeeper  作为registry

1a5261e4ae61a94d3b246d4af2456a51.png

实现步骤

组件:

Zookeeper、netty 。

(Zookeeper容器,映射类和服务, 简易版完全可以用Map>替代,此处用到zookeeper的持久化节点、临时节点)

步骤:

安装zookeeper ,java程序中建立连接。

服务注册,将对象名绑定到服务地址。com.dubbo.Icsdn -> 127.0.0.1:8888

消费端通过classname请求zookeeper返回服务地址IP:port

消费端Netty请求ip:port/classname/method

服务端netty回复classname/method

代码实现:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值