美文网首页
Dubbo-基础概念介绍

Dubbo-基础概念介绍

作者: 洛神灬殇 | 来源:发表于2018-11-29 22:19 被阅读0次

    1.架构

    1.1 服务角色介绍

    Provider:暴露服务的服务提供方。

    Consumer:调用远程服务的服务消费方。

    Registry:服务注册和服务发现的注册中心,存放服务提供方的服务发布信息,调用地址,协议类型等。

    Monitor:统计服务的调用次数和调用事件,进行分析和统计服务的压力等性能问题。

    Container:服务运行的容器,也可以理解为:RPC服务器。

    1.2 服务调用关系

    服务容器Container:负责区解决启动Rpc服务器和加载服务提供信息和启动服务提供者。

    服务提供者Provider:负责向注册中心Registry组件去注册自己的提供的服务,并且会在内存中统计服务调用次数和服务调用时间,每分钟推送服务定时推送信息到健康中心。

    服务消费者Consumer:负责向注册中心Registry组件去消费获取自己所需要的服务,根据软负载均衡进行构建调用服务方案,如果调用失败,则采用failover机制,切换为其他服务提供者的服务。并且会在内存中统计服务调用次数和服务调用时间,每分钟推送服务定时推送信息到健康中心。

    注册中心Registry:负责向返回服务提供者列表给服务消费者,建立长连接机制进行构建推送服务消费者实时更新服务信息。

    1.3 服务连通性

    (1)服务提供者和消费者:服务注册中心和服务消费中心只有在启动的时候,与注册中心交互,注册服务和获取订阅服务等。

    (2)注册中心采用的目录服务JNDI协议进行构建服务的查找和注册功能。

    (3)服务注册中心和消费中心、服务注册中心三者之间均为长连接、监控中心除外。

    (4)服务注册中心通过长连接进行交互服务提供者,服务提供者出现宕机,注册中心,会立刻通知服务消费着,服务消费者会即可进行服务降级和服务的恢复

    (5)服务注册中心、监控中心宕机,不会影响服务消费着和提供者,会有内部缓存列表进行服务调用。

    (6)服务提供者和服务消费着可以进行直接调用,所以服务监控中心和服务注册中心,不是必需。

    (7)服务提供者会每分钟定时汇报服务调用时间和次数到监控中心、同时在启动的时候注册服务信息到注册中心。

    (8)服务消费者,会在启动的时候,获取注册中心相关的服务信息列表,然后根据SLP技术,进行服务负载均衡,获取其中一个服务的信息调用服务。同时每分钟会定时上报服务调用时间到服务监控中心。

    1.4 服务健壮性

    健康中心宕机只会影响数据丢失的完整性,不会出现不可用的情况。

    注册中心具有failover机制进行故障切换功能对等集群。

    服务提供和服务消费,可以通过本地缓存进行继续通信,即使注册中心全部宕机,服务提供者为无状态化服务,即使服务宕机不影响其他服务使用,如果全部挂了,则客户端消费会进行无限次尝试重新连接调用,直到服务提供者恢复。

    1.5 服务伸缩性

    注册中心可以长连接时时更新服务提供者到服务列表中。

    其中有几点:

    服务Deployer,可以自动部署服务本地代理。

    服务Repository,仓库基于存储服务的开发包。

    Scheduler调度中心:基于服务的压力,动态增减服务提供实例。

    admin:统一控制台。

    相关文章

      网友评论

          本文标题:Dubbo-基础概念介绍

          本文链接:https://www.haomeiwen.com/subject/gsrqcqtx.html