全部产品
云市场

Spring Cloud 概述

更新时间:2019-08-06 13:59:38

EDAS 支持原生 Spring Cloud 微服务框架,您在这个框架下开发的应用只需添加依赖和修改配置,即可获取 EDAS 企业级的应用托管、应用治理、监控报警和应用诊断等能力,实现代码零入侵。

Spring Cloud 提供了简化应用开发的一系列标准和规范。这些标准和规范包含了服务发现、负载均衡、熔断、配置管理、消息事件驱动、消息总线等,同时 Spring Cloud 还在这些规范的基础上,提供了服务网关、全链路跟踪、安全、分布式任务调度和分布式任务协调的实现。

目前业界比较流行的 Spring Cloud 具体实现有 Spring Cloud Netflix、Spring Cloud Consul、Spring Cloud Gateway、Spring Cloud Sleuth 等,最近由阿里巴巴中间件开源的 Spring Cloud Alibaba 也是业界中受关注度很高的另一种实现。

如果您已经使用 Spring Cloud Netflix、Spring Cloud Consul 等 Spring Cloud 组件开发的应用,可以直接部署到 EDAS 正常运行并获得应用托管能力,同时还可以不修改任何一行代码直接使用 EDAS 所提供的高级监控功能,实现全链路跟踪、监控报警和应用诊断等监控功能。

如果您的 Spring Cloud 应用想使用 EDAS 中更多的服务治理相关的功能,那么您需要将您的 Spring Cloud 组件替换为 Spring Cloud Alibaba 中的组件或增加 Spring Cloud Alibaba 组件。

兼容性说明

EDAS 目前支持 Spring Cloud Greenwich、Spring Cloud Finchley 和 Spring Cloud Edgware 三个版本。Spring Cloud、Spring Boot 和 Spring Cloud Alibaba 及各组件的版本对应关系请参见版本配套关系说明

Spring Cloud 功能 、开源实现及 EDAS 兼容性如下表所示:

Spring Cloud 功能 开源实现 EDAS 兼容性 说明
通用功能 服务注册与发现
  • Netflix Eureka
  • Consul Discovery
兼容且提供替换组件
提供替换组件 Nacos。使用 Nacos,除了 Spring Cloud 服务注册发现的标准功能外,还可以获得更多服务治理的功能。
负载均衡 Netflix Ribbon 兼容 可以直接与 EDAS 的服务注册发现组件配合使用。
服务调用
  • Feign
  • RestTemplate
兼容 可以直接使用 EDAS 的服务发现、链路跟踪功能。
配置管理
  • Config Server
  • Consul Config
兼容且提供替换组件 提供替换 Nacos。使用 Nacos,除了 Spring Cloud 服务注册发现的标准功能外,还可以从 EDAS 控制台管理配置,并获得实时动态刷新、推送轨迹查看等功能。
服务网关
  • Spring Cloud Gateway
  • Netflix Zuul
兼容 可以直接使用 EDAS 的服务发现、配置管理、全链路跟踪功能。
链路跟踪
Spring Cloud Sleuth 兼容且提供替换组件 提供替换组件 ARMS。只需在 EDAS 控制台开启高级监控,无需修改任何代码和依赖,即可使用 ARMS。除全链路跟踪功能外,还可获得全息排查、线程剖析等功能。
消息驱动 Spring Cloud Stream
  • RabbitMQ binder
  • Kafka binder
兼容且提供替换组件 提供替换组件 RocketMQ binder,可以与其它实现同时使用
消息总线 Spring Cloud Bus
  • RabbitMQ
  • Kafka
兼容且提供替换组件 提供替换组件 RocketMQ bus,可以与其它实现同时使用
安全
Spring Cloud Security 兼容 -
分布式任务调度
Spring Cloud Task 兼容 -
分布式协调
Spring Cloud Cluster 兼容 -

版本配套关系说明

Spring Cloud、Spring Boot 和 Spring Cloud Alibaba 及 EDAS 提供的商业化组件的版本配套关系如下表所示。

Spring Cloud Spring Boot Spring Cloud Alibaba EDAS 商业化组件
Nacos Discovery Nacos Config SchedulerX
Greenwich 2.1.x 2.1.0.RELEASE 2.1.0.RELEASE 2.1.0.RELEASE 2.1.0.RELEASE
Finchley 2.0.x 2.0.0.RELEASE 2.0.0.RELEASE 2.0.0.RELEASE 2.0.0.RELEASE
Edgware 1.5.x 1.5.0.RELEASE 1.5.0.RELEASE 1.5.0.RELEASE 1.5.0.RELEASE

相关文档

  • 如果您想将服务发现组件,如 Eureka、Consul 替换成 EDAS 所提供的 spring-cloud-alibaba-nacos-discovery,只需修改依赖和配置即可,无需修改任何代码。详情参考服务发现

  • 如何你想将配置管理组件,如 Spring Cloud Config 、Consul 替换成 EDAS 所提供的 spring-cloud-alibaba-nacos-config,只需修改依赖和配置即可,无需修改任何代码,详情参考配置管理

  • 如果你已经使用了服务网关,想使用 EDAS 提供的服务注册发现,配置管理,限流降级的功能,只需要引入相应的starter依赖并修改配置即可,详情参考服务网关