Dubbo is what?

Apache Dubbo is a high-performance, lightweight, open source Java service framework

What’s dubbo for?

  • High-performance RPC calls for interface proxy;

  • Automatic service registration and discovery;

  • Intelligent load balancing strategy;

  • Highly scalable capability;

  • Run-time flow scheduling;

  • Visual service governance and operation and maintenance;

In the case of the game, this is to implement local calls to remote methods, making them just as silky as local methods.

What does the Dubbo structure look like?

Here’s a picture of the official website

In fact, it is useless to see the flow chart, rather than see my dubbo series of articles, service exposure, service reference the whole process, to give you the whole clearly.

The lifetime of dubbo

2011/10/27: Just born, Alibaba announced Dubbo open source.

2012/10/23: Nearly died, released the last version 2.5.3 and stopped maintenance updates.

2017/07/31: Back from the dead, officially announced to open the re-update, and will receive key maintenance, reference: Dubbo announced to restart maintenance.

2017/09/07: Release the first version of resurrection: Dubo-2.5.4.

2018/01/08:

1. Dubbo team announces Dubbo 3.0

2. Released Dubbo-2.6.0, which mainly merged dubbox project branch which was open source by Dangdang. PS: Dubbo maintenance period, Dangdang open source dubBox based on Dubbo.

Dubbo Spring Boot release: Dubbo – Spring-boot-Starter V1.0.0 public beta.

2018/02/09: Dubbo has been voted into the Apache Foundation incubator and the Apache domain name has been updated and is no longer limited to Java.

2019/05/20: Apache Software Foundation announces Dubbo’s graduation as Apache’s Top project.

2021/06/20: Dubbo3.0 is here

So what are the features of Dubo3.0

  • Application-level service discovery mechanism;

  • Next generation RPC protocol: Triple; Triple protocol is the main protocol of Dubbo3. It is fully compatible with gRPC over HTTP/2 and extends load balancing and flow control mechanisms at the protocol level.

  • New routing rules;

  • Significantly improved performance;

  • Kubernetes service integration;

Note: The Dubbo core no longer provides third-party SDK extensions, which need to be supported through the Dubbo-spI-Extensions project.

Currently supported extensions are:

  • Zookeeper serves as a registry, metadata report, and configuration center.

  • Nacos as a registry, metadata reporting, configuration center;

  • Kubernetes as the registry;

  • Redis as metadata reporting;

  • Apollo as the configuration center;

  • Hessian2 and JDK as default serializers;

  • The Triple protocol supports Protobuf;

So how exactly do you learn dubbo?

A lot of people don’t know how to learn Dubbo, they just heard about it, so how do you learn it?

The first must be to see the official website: dubbo.apache.org/zh/

Second is to look at the source: github.com/apache/dubb…

If you want to see the code comments, you can see the version of my notes: github.com/wiatingpub/…

Secondly, pay attention to me. I wrote a servitization middleware in my company a few days ago, referring to dubbo. Recently, I plan to write a Dubbo series, so far I have written:

Play dubbo together. Get in the door first

Play Dubbo together, swastika reveal service exposed

For those of you who want to learn dubbo, look at the introduction process of the 20,000 word sorting service

  • How does the service consumer remotely invoke the service provider, 80% of the time

  • SPI, I’m writing

  • AOP mechanism in dubbo, being written

  • Service governance, writing

But they are 2.6x series, 3.0 version will write a modified version of the series out, interested in continuing to pay attention to.

After dubbo, can YOU make an RPC framework?

Yes, look at dubbo source code reference related models, like our company’s RPC framework, we mainly refer to the process and model design, For example, invoker model, Cluster, Router, provider, consumer, Register, proxy layer, transport, loadBalance and so on. I will take you to write an RPC in the future. You are interested in following me.

So how do you spell dubbo?

Come, open your mouth: Dabo