Hi,

Recently, I have seen people asking questions like:
- What is the difference between Dubbo and Spring Cloud?
- Can Dubbo support restful service?

This makes me think about the relationship between Dubbo as an RPC
framework and Micro-services.

When talking about micro-services, we are talking about service
registry and discovery, configuration, circuit breaker, observability
like tracing, logging, API gateway, load balancing and etc.

When I looked into Dubbo, actually I see very well integration with
most of components.

- service registry and discovery: zookeeper, Nacos, etc...
- configuration: Nacos, Apollo, etc...
- circuit breaker: hystrix, sentinel
- tracing: zipkin, sleuth, skywalking

Some other components might need some extra work, for example, API
gateway, client side load balancing. But this should be achieved
without too much work. What we are missing is some official guidance.

With these components surrounded by, I am thinking that the Dubbo
Ecosystem is not only RPC Ecosystem, it is actually a Microservice
Ecosystem.

There is currently a Dubbo ecosystem in the community page on the
website[1], I suggest we build a dedicated page on the website, to
introduce the new Dubbo Ecosystem.

Now back to the questions:

- What is the difference between Dubbo and Spring Cloud?
They are not something that should be compared. Spring Cloud provide
an easy way for developer to quickly build microservices. Dubbo should
be easily integrated into Spring Cloud. I see a project call Spring
Cloud Alibaba[2]. I think it should integrate Dubbo as well, it is
already in their roadmap. People who write Spring Cloud application
should be easily talking to service provided by Dubbo, either via
restful or native Dubbo service. Dubbo spring boot starter project is
a very good example to show how Dubbo and Spring project and work
together.

- Can Dubbo support restful service?
Dubbo has out-of-box support of result service which is based on
JAX-RS 2.0 since 2.6.0. Implement a restful service is as simple as
adding some annotation to your existing services.
We need more documentation, tutorial, maybe we need to talk more about
this on the meetup.

[1] http://dubbo.apache.org/en-us/community/index.html
[2] https://github.com/spring-cloud-incubator/spring-cloud-alibaba



--
Best Regards!
Huxing

Reply via email to