Repolode
apache

apache/dubbo

Java implementation of Apache Dubbo, an RPC and microservice framework for building service communication, discovery and traffic management.

Stars
41,578
Forks
26,330
Open issues
1,049
Last commit
yesterday

What is it?

Apache Dubbo is a Web and RPC framework for building microservices. This repository holds the Java implementation, with sibling projects providing Go, Python, PHP, Erlang, Rust and Node.js/Web clients under the same umbrella.

Dubbo covers service communication over protocols such as Triple (gRPC-compatible), Dubbo2 over TCP, and REST, and integrates with registries like Zookeeper and Nacos for service discovery. It also provides traffic management, observability, tracing, security, and a visualized console. A Spring Boot Starter lets developers enable these features through a dependency and YAML configuration.

The project is organized into version lines: 3.3.x is the current line with JDK 1.8 through 25 support, while 3.2.x and 3.1.x remain available, and Dubbo2 versions are end-of-life.

Key features

  • 01Triple protocol compatible with gRPC, plus Dubbo2 TCP and REST
  • 02Service discovery through registries such as Zookeeper and Nacos
  • 03Traffic management and method-level rate limiting
  • 04Metrics, tracing and a visualized console for observability
  • 05Spring Boot Starter for configuration-driven setup

Use cases

  • Building RPC services between Java microservices
  • Migrating Spring-based services to a registry-driven microservice setup
  • Exposing Java services to gRPC or REST clients through Triple
  • Running cross-language services alongside Go or Python Dubbo clients

Quick start

  1. 1

    Follow the 5-minute lightweight RPC guide to build a service with the Dubbo SDK

  2. 2

    Or use the Spring Boot Starter guide to add Dubbo to a Spring Boot project

Things to know

  • Dubbo 2.x versions are end-of-life and no longer supported.
  • Dubbo 3.1.11 is stable but not actively maintained.
  • Dubbo 3.3.7-SNAPSHOT dependencies are not yet available.

Topics

FAQ

What is dubbo?
Java implementation of Apache Dubbo, an RPC and microservice framework for building service communication, discovery and traffic management. Apache Dubbo is a Web and RPC framework for building microservices. This repository holds the Java implementation, with sibling projects providing Go, Python, PHP, Erlang, Rust and Node.js/Web clients under the same umbrella.
Is dubbo free to use? What license does it have?
dubbo is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is dubbo still maintained?
Actively maintained. The last commit to dubbo was on Oct 20, 2026.
What can I use dubbo for?
Building RPC services between Java microservices Migrating Spring-based services to a registry-driven microservice setup Exposing Java services to gRPC or REST clients through Triple Running cross-language services alongside Go or Python Dubbo clients
How do I install dubbo?
Follow the 5-minute lightweight RPC guide to build a service with the Dubbo SDK Or use the Spring Boot Starter guide to add Dubbo to a Spring Boot project
Where can I get dubbo?
The source code and installation instructions are on GitHub: https://github.com/apache/dubbo

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects