本帖最后由 大蓝鲸小蟀锅 于 2019-5-28 16:57 编辑
谈谈对dubbo的理解
Dubbox 致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbox就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbox这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架。
节点角色说明: · Provider: 暴露服务的服务提供方。 · Consumer: 调用远程服务的服务消费方。 · Registry: 服务注册与发现的注册中心。 · Monitor: 统计服务的调用次调和调用时间的监控中心。 · Container: 服务运行容器。
调用关系说明: · 0. 服务容器负责启动,加载,运行服务提供者。 · 1. 服务提供者在启动时,向注册中心注册自己提供的服务。 · 2. 服务消费者在启动时,向注册中心订阅自己所需的服务。 · 3. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推 送变更数据给消费者。 · 4. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用, 如果调用失败,再选另一台调用。 · 5. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计 数据到监控中心。
Dubbo能做什么(好处,优点), 解决了什么问题
同问: dubbo除了做传递服务还会什么 有深入了解吗 · 透明化的远程方法调用,就像调用本地方法一样调用远程方法,只需简单配置,没有任何API侵入。 · 软负载均衡及容错机制,可在内网替代F5等硬件负载均衡器,降低成本,减少单点。 · 服务自动注册与发现,不再需要写死服务提供方地址,注册中心基于接口名查询服务提供者的IP地址,并且能够平滑添加或删除服务提供者。 挂机_Dubbo挂机了怎么处理
同问1: Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么? 同问2: zookeeper挂了还能不能调用服务 (70%这个问各种挂机、接收不到消息、一直发送.........各种问题) 首先zookeeper挂了还能调用服务,在启动dubbo时,消费者会从zk拉取注册的生产者的地址接口等数据,缓存在本地。 每次调用时,按照本地存储的地址进行调用。但是在注册中心全部挂掉后增加新的提供者,则不能被消费者发现.(前提是你没有增加新的服务,如果你要调用新的服务,则是不能办到的。) 知识补充: 健状性 1. 监控中心宕掉不影响使用,只是丢失部分采样数据 2. 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务 3. 注册中心对等集群,任意一台宕掉后,将自动切换到另一台 4. 注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯 5. 服务提供者无状态,任意一台宕掉后,不影响使用 6. 服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢复
|