About this project

Apache Dubbo is an open-source RPC and microservice framework, with this repository providing the Java implementation. It offers solutions for communication, service discovery, traffic management, observability, security, and tooling for building enterprise-grade microservices. Architecture: Consumers and providers communicate via RPC protocols such as Triple (gRPC-compatible), Dubbo2 (TCP), REST, and custom protocols. Consumers dynamically discover provider instances from registries like Zookeeper and Nacos, and manage traffic using defined strategies. Built-in support covers dynamic configuration, metrics, tracing, security, and a visualized console. Getting started: A lightweight RPC API allows building services with a minimal codebase and SDK. For microservices, a Spring Boot Starter enables service discovery, observability, and tracing through a dependency and YAML configuration. Documentation covers deployment, monitoring, and traffic management tasks. Features highlighted in the README include RPC protocols, traffic management, service discovery, observability, extensibility, security, a visualized console, and Kubernetes/service mesh support. Version compatibility: Dubbo3 releases (3.3.x, 3.2.x) support JDK 1.8 through 21, with 3.3.7-SNAPSHOT adding JDK 25 support. Notable capabilities across versions include Triple protocol (gRPC/cURL), REST support, Spring Boot Starters, metrics and tracing, thread pool isolation, native image support, Mutiny reactive support, affinity router, method-level TPS limiting, and a Spring 6 security plugin. Dubbo2 versions (2.7.x and earlier) are marked end-of-life. The project is licensed under Apache License 2.0 and welcomes contributions through GitHub issues, discussions, and pull requests, with mailing list and community channels available.