# alibaba/dubbo

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/alibaba-dubbo).**

41,522 stars · 26,424 forks · Java · Apache-2.0

## Links

- GitHub: https://github.com/alibaba/dubbo
- Homepage: https://dubbo.apache.org/
- awesome-repositories: https://awesome-repositories.com/repository/alibaba-dubbo.md

## Description

Dubbo is a high-performance Java remote procedure call framework and microservice governance platform. It enables communication between distributed services using a remote service orchestrator and a distributed service registry to locate available providers in real time.

The system provides a microservice monitoring suite for health tracking and distributed tracing, alongside integrated security plugins for access control. It manages network traffic through routing strategies, rate limiting, and thread pool isolation to maintain system stability.

The framework covers broader capabilities in service discovery and microservice governance, allowing for the coordination of registration and configuration across distributed architectures.

## Tags

### Networking & Communication

- [Remote Procedure Call Frameworks](https://awesome-repositories.com/f/networking-communication/remote-procedure-call-frameworks.md) — Provides a high-performance RPC framework for executing functions across distributed address spaces as if they were local calls. ([source](https://github.com/alibaba/dubbo#readme))
- [Registry-Based Service Discovery](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-systems-coordination/service-discovery-mechanisms/registry-based-service-discovery.md) — Locates available service providers by querying a centralized registry that synchronizes network addresses across the cluster.
- [Network Traffic Management](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-routing-traffic-management/network-traffic-management.md) — Manages request flow using routing strategies, rate limiting, and thread pool isolation to maintain system stability. ([source](https://github.com/alibaba/dubbo#readme))
- [RPC Frameworks](https://awesome-repositories.com/f/networking-communication/rpc-frameworks.md) — Provides a high-performance Java RPC framework for communication between distributed services via TCP and REST.
- [Service Exposure](https://awesome-repositories.com/f/networking-communication/service-exposure.md) — Enables routing requests between distributed providers and consumers using high-performance TCP and REST protocols. ([source](https://github.com/alibaba/dubbo#readme))
- [Service Governance](https://awesome-repositories.com/f/networking-communication/service-governance.md) — Coordinates service discovery, registration, and load balancing to maintain stability in distributed microservices environments. ([source](https://github.com/alibaba/dubbo#readme))
- [Protocol-Agnostic Transport Layers](https://awesome-repositories.com/f/networking-communication/protocol-agnostic-transport-layers.md) — Decouples service APIs from network transport, allowing seamless switching between TCP, HTTP, and gRPC.

### DevOps & Infrastructure

- [Service Discovery](https://awesome-repositories.com/f/devops-infrastructure/service-discovery.md) — Provides mechanisms for dynamically locating and routing to service instances via a distributed registry. ([source](https://github.com/alibaba/dubbo#readme))
- [Dynamic Configuration Updates](https://awesome-repositories.com/f/devops-infrastructure/dynamic-configuration-updates.md) — The product supports updating application settings and environment variables in real-time without requiring a full restart of the service. ([source](https://github.com/alibaba/dubbo#readme))
- [Service Health Monitoring](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/operational-observability-access/service-health-monitoring.md) — Tracks operational health and performance of remote services through integrated metrics and distributed tracing.
- [Real-time Configuration Updates](https://awesome-repositories.com/f/devops-infrastructure/real-time-configuration-updates.md) — Enables updating environment variables and service settings in real time without needing to restart the application.

### Software Engineering & Architecture

- [Microservice Platforms](https://awesome-repositories.com/f/software-engineering-architecture/microservice-platforms.md) — Serves as a comprehensive platform for governing service discovery, registration, and configuration in distributed architectures.
- [Request Interceptors](https://awesome-repositories.com/f/software-engineering-architecture/request-interceptors.md) — Features a pluggable chain of filters to handle security, logging, and traffic routing for RPC requests.
- [Proxy-Based Remote Invocation](https://awesome-repositories.com/f/software-engineering-architecture/service-locators/remote-service-invocations/proxy-based-remote-invocation.md) — Uses client-side dynamic proxies to transparently redirect local method calls to remote service providers.
- [Traffic Orchestration Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/traffic-orchestration-frameworks.md) — Controls network traffic through routing strategies, rate limiting, and thread pool isolation.

### Development Tools & Productivity

- [Real-Time Push Updates](https://awesome-repositories.com/f/development-tools-productivity/configuration-updates/real-time-push-updates.md) — Implements real-time propagation of configuration changes from a central server to all connected application nodes.

### Programming Languages & Runtimes

- [Command-Based Pool Isolation](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/task-orchestration-frameworks/thread-pools/custom-thread-pool-configurations/command-based-pool-isolation.md) — Protects system stability by allocating dedicated thread pools to different services to prevent cascading failures.

### System Administration & Monitoring

- [Microservices Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/health-monitoring/instance-health-monitors/microservices-health-monitoring.md) — Ships a health tracking system providing distributed tracing and performance metrics for Java microservices.
- [System Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/observability-instrumentation/system-health-monitoring.md) — Tracks application health and performance through integrated metrics, distributed tracing, and a management console. ([source](https://github.com/alibaba/dubbo#readme))

### Part of an Awesome List

- [Distributed Applications](https://awesome-repositories.com/f/awesome-lists/devops/distributed-applications.md) — High-performance RPC framework for distributed services.
- [Java and JVM Ecosystem](https://awesome-repositories.com/f/awesome-lists/devtools/java-and-jvm-ecosystem.md) — High-performance RPC framework for Java applications.
