Duubbo是一个RPC远程调用框架, 分布式服务治理框架redis
服务与服务之间会有不少个Url、依赖关系、负载均衡、容错、自动注册服务spring
默认用的dubbo协议、Http、RMI、Hessianjson
分为四大模块架构
生产者、消费者、注册中心、监控中心负载均衡
生产者:提供服务框架
消费者: 调用服务分布式
注册中心:注册信息(redis、zk)微服务
监控中心:调用次数、关系依赖等spa
首先生产者将服务注册到注册中心(zk),使用zk持久节点进行存储,消费订阅zk节点,一旦有节点变动,rest
zk经过事件通知传递给消费者,消费能够调用生产者服务。
服务与服务之间进行调用,都会在监控中心中,存储一个记录。
Dubox使用http协议+rest风格传入json或者xml格式进行远程调用。
Dubbo使用Dubbo协议。
SpringCloud、dubbo、Dubbox、thint、Hessian…
Rpc其实就是远程调用,服务与服务之间相互进行通信。
目前主流 用http+json
相同点
dubbo与springcloud均可以实现RPC远程调用。
dubbo与springcloud均可以使用分布式、微服务场景下。
区别:
dubbo有比较强的背景,在国内有必定影响力。
dubbo使用zk或redis做为做为注册中心
springcloud使用eureka做为注册中心
dubbo支持多种协议,默认使用dubbo协议。
Springcloud只能支持http协议。
Springcloud是一套完整的微服务解决方案。
Dubbo目前已经中止更新,SpringCloud更新速度快。