Enterprise Distributed Application Service (EDAS) supports the native Spring Cloud microservice framework. You can deploy Spring Cloud applications to EDAS simply by adding dependencies and modifying configurations. Then you can use EDAS functions, such as enterprise-level application hosting, application governance, monitoring and alerting, and application diagnosis. This ensures zero code intrusion.

Introduction

Spring Cloud provides a series of standards and specifications to simplify application development. These standards and specifications cover service discovery, load balancing, circuit breakers, configuration management, message event triggering, and message bus. In addition, Spring Cloud provides implementation components for gateways, distributed tracing, security, distributed job scheduling, and distributed job coordination.

Currently, the most popular Spring Cloud implementation components in the industry include Spring Cloud Netflix, Spring Cloud Consul, Spring Cloud Gateway, and Spring Cloud Sleuth. Spring Cloud Alibaba, an open-source middleware recently developed by Alibaba, is also a very popular implementation component in the industry.

You can directly deploy and manage applications developed by using Spring Cloud components, such as Spring Cloud Netflix and Spring Cloud Consul, in EDAS. In addition, you can directly use the advanced monitoring functions provided by EDAS without modifying any code, enabling monitoring functions such as distributed tracing, monitoring and alerting, and application diagnosis.

To use more service governance functions in EDAS to manage your Spring Cloud applications, you need to replace your Spring Cloud components with those in Spring Cloud Alibaba or add Spring Cloud Alibaba components.

Compatibility

Currently, EDAS supports Spring Cloud Greenwich, Spring Cloud Finchley, and Spring Cloud Edgware. For more information about Spring Cloud, Spring Boot, and Spring Cloud Alibaba, and their version mapping, see Version mapping.

The following table lists the compatibility between Spring Cloud functions, other open-source implementation components, and EDAS.

Spring Cloud function Open-source component Compatibility with EDAS Reference
Common functions Service registration and discovery
  • Netflix Eureka
  • Consul Discovery
Compatible, with an equivalent component Host Spring Cloud applications to EDAS
Load balancing Netflix Ribbon Compatible Implement load balancing
Service calls
  • Feign
  • RestTemplate
Compatible N/A
Configuration management
  • Config Server
  • Consul Config
Compatible, with an equivalent component Implement configuration management
Gateways
  • Spring Cloud Gateway
  • Netflix Zuul
Compatible Build service gateways
Distributed tracing Spring Cloud Sleuth Compatible, with an equivalent component N/A
Message-driven application development: Spring Cloud Stream
  • RabbitMQ Binder
  • Kafka Binder
Compatible, with an equivalent component N/A
Spring Cloud Bus
  • RabbitMQ
  • Kafka
Compatible, with an equivalent component N/A
Security Spring Cloud Security Compatible N/A
Distributed job scheduling Spring Cloud Task Compatible Implement job scheduling
Distributed coordination Spring Cloud Cluster Compatible N/A
Note Spring Cloud components that are not mentioned in the preceding table can be used, such as Hystrix, Zuul, and Spring Cloud Gateway.

Version mapping

The following table describes the mapping among Spring Cloud, Spring Boot, Spring Cloud Alibaba, and commercially available EDAS components.

Spring Cloud Spring Boot Spring Cloud Alibaba Commercially available EDAS components
  • Nacos Registry
  • Nacos Config
Greenwich 2.1.x 2.1.1.RELEASE 2.1.1.RELEASE
Finchley 2.0.x 2.0.1.RELEASE 2.0.1.RELEASE
Edgware 1.5.x 1.5.1.RELEASE 1.5.1.RELEASE