全部产品
云市场

Dubbo 概述

更新时间:2019-10-10 10:07:05

EDAS 支持原生 Dubbo 微服务框架,您在 Dubbo 框架下开发的微服务只需添加依赖和修改配置(代码零入侵),并部署到 EDAS 之后,即可获取 EDAS 企业级的微服务应用托管、微服务治理、监控报警和应用诊断等能力。

Dubbo 架构

开源 Dubbo 目前包含两个主流版本:2.6.x 和 2.7.x。两个版本的架构如下图所示。

Dubbo 2.6.x

Dubbo 架构-2.6

Dubbo 2.7.x

Dubbo 架构-2.7

Dubbo 服务框架的工作流程如下:

  1. 提供者在启动时,向注册中心注册。
  2. 消费者在启动时,向注册中心订阅所需的服务。
  3. 注册中心返回提供者地址列表给消费者。如果有变更,注册中心将基于长连接推送变更数据给消费者。
  4. 消费者从提供者地址列表中,基于软负载均衡算法,选一个提供者进行调用。

将 Dubbo 应用托管到 EDAS 的价值

本节介绍将 Dubbo 应用托管到 EDAS 的含义和价值。

托管的含义

Dubbo 应用托管到 EDAS 的核心即三个中心的托管,注册中心、配置中心和元数据中心。

托管前后架构对比

  • ECS 自建的部署结构中,您需要自行搭建 ZooKeeper(注册中心)和 Dubbo Admin(包括部署元数据中心和配置中心)。
  • 托管到 EDAS 后,Nacos(包含注册中心、配置中心和元数据中心)和 Dubbo 服务治理平台均由 EDAS 提供,您不需要关注这些组件的可用性,并且还可以体验到比自建 Dubbo Admin 更强大的微服务治理平台。
中心类型 开源组件 EDAS 组件 托管说明
注册中心
  • Nacos(推荐)
  • ZooKeeper(推荐)
  • etcd
  • Consul
  • Eureka
    • Nacos(推荐)
    • EDAS 注册中心
    Nacos 为推荐的注册中心,您只需在应用中添加开源版本的dubbo-nacos-registry依赖。
    配置中心
  • Nacos(推荐)
  • ZooKeeper(推荐)
  • Apollo
  • Nacos(推荐) 在应用中添加dubbo-configcenter-nacos依赖。
    元数据中心
  • Nacos(推荐)
  • Redis(推荐)
  • ZooKeeper
  • Nacos(推荐) 在应用中添加dubbo-metadata-report-nacos依赖。

    托管的价值

    将 Dubbo 应用托管到 EDAS,您只需要关注 Dubbo 应用自身的逻辑,无需再关注注册中心、配置中心和元数据中心的搭建和维护,托管后还可以使用 EDAS 提供的弹性伸缩、限流降级、监控及微服务治理能力,而且整个托管过程对您来说是完全透明的,不会增加理解和开发成本。托管的具体价值如下:

    • 成本:无需再自行运维 Eureka、ZooKeeper、Consul 等中间件组件,可以直接使用 EDAS 提供的服务发现与配置管理能力。
    • 部署:EDAS 提供了启动参数灵活配置、流程可视化、服务优雅上下线和分批发布等功能,让您的应用部署可配、可查、可控。
    • 服务治理:EDAS 提供了服务查询、条件路由、黑白名单、标签路由、动态配置、负载均衡配置、权重配置和统一配置管理,您可以对应用进行全面的服务治理。
    • 弹性伸缩:EDAS 提供了弹性伸缩功能,您可以根据流量高峰和低谷实时地为应用扩容和缩容。
    • 限流降级:EDAS 提供了限流降级功能,保证您的应用高可用。
    • 监控:EDAS 提供了高级监控功能,除了基本的实例信息查询外,您还可以查询微服务调用链、服务调用拓扑和慢 SQL。

    相关操作

    EDAS 支持多种 Dubbo 微服务应用的开发方式: