| |
Dubbo |
Spring Cloud |
| Service Registry |
Zookee Per |
Spring Cloud Netflix Eureka |
| Service Invocation method |
RPC |
REST api |
| service monitoring |
dubbo-monitor |
Spring Boot Admin |
| circuit breaker |
Imperfect |
Spring Cloud Netflix hystrix |
| service Gateway |
none |
Spring cloud Netflix zuul |
| distributed configuration |
none |
Spring Cloud Config |
| service tracking |
None | Td>spring Cloud Sleuth
| message bus |
none |
Spring Cloud Bus |
| Data Flow |
None |
Spring Cloud Stream |
| bulk Tasks |
none |
Spring Cloud Task |
| ... |
... |
... |
The biggest difference: Spring Cloud has abandoned Dubbo RPC traffic, using an HTTP-based rest approach. Strictly speaking, both of these methods have their merits and demerits. Although, to some extent, the latter sacrifices the performance of service invocations, it also avoids the problems associated with the native RPC mentioned above. And rest is more flexible than RPC, and the dependence of service providers and callers relies on only one paper contract, and there is no code-level strong dependency, which is more appropriate in the context of fast evolving microservices.
Summary: Dubbo and Spring Cloud are not completely competitive, and the problem domain is different: Dubbo is always positioned as an RPC framework, and Spring Cloud is designed to be a one-stop solution for microservices architectures.
In contrast, Dubbo can be likened to the Netflix OSS stack, while spring Cloud integrates Netflix OSS as a distributed service governance solution, but in addition to spring cloud, it also provides the config, stream, Security, sleuth and other distributed service solutions. Currently, due to the RPC protocol, registry metadata mismatch and other issues, in the face of micro-service infrastructure selection Dubbo and Spring Cloud can only two select one, which is the reason for the comparison between the total.
Dubbo will actively seek to adapt to the spring cloud ecosystem, for example, as a Springcloud binary communication solution to perform Dubbo performance benefits, or Dubbo through modularity and support for HTTP to Spring cloud
The difference between Spring Cloud and Dubbo