Apache Dubbo

一款易用的、提供高性能 RPC 通信及服务治理能力的微服务开发框架

了解更多

选择编程语言后快速体验!
Java Go Rust Node Python 更多

Why Dubbo?


Apache Dubbo 是一款支持多语言的、易用的 web 和 rpc 框架,同时为构建企业级微服务提供服务发现、流量治理、可观测、认证鉴权等能力、工具与最佳实践。

images/flower.svg

快速上手,让开发者专注微服务业务开发

多语言 SDK 以贴合各自语言特性的方式定义了服务配置、API 与编程范式,通过丰富的生态组件、配套工具等,轻松解决微服务 day0 到 day1 的问题,让开发者专注在微服务业务开发上。

images/scalable.svg

服务治理,随时监测和管控微服务集群状态

提供服务发现、动态配置等基础微服务套件,支持导出多维度的可观测指标并与接入可视化系统如 Dubbo Admin,通过自定义及接入开源 Service Mesh 体系提供强大的流量管控能力。

images/blocks.svg

超高性能,面向百万实例、QPS 微服务集群设计

以高性能的二进制与 HTTP 通信协议,提供超低延迟的数据传输与高吞吐量 Streaming 通信模型;横向可扩展的、面向百万集群规模调优的地址推送、连接管理、流量调度实现。

images/blocks.svg

企业级解决方案,多年标杆企业生产环境检验

用户群体遍布各行各业,典型代表包括阿里巴巴、工商银行、携程、海尔、金蝶等,云厂商如阿里云、腾讯云、华为云等也推出了基于 Dubbo 的托管云产品。值得关注的是 Dubbo3 在阿里巴巴已全面取代 HSF 实现了框架统一。

快速掌握基于 Apache Dubbo 的微服务开发与治理

By 刘军,Apache Dubbo PMC Chair



了解 Dubbo3 及多语言体系!



探索 Dubbo 生态、社区动态并参与线下活动!

核心特性

定义服务

定义服务

服务发现

服务地址注册与发现是构建微服务体系的关键,Dubbo 默认提供 Nacos、Zookeeper 等注册中心并支持自定义扩展;Dubbo3 应用级服务发现模型解决 Dubbo2 规模瓶颈问题的同时,实现了与 Kubernetes Native Service 及 Spring Cloud 等微服务体系的互通。

流量管控

Dubbo 支持通过一系列流量规则控制服务与服务之间的流量分布与行为,基于这些规则可以实现基于权重流量分布、流量灰度验证、金丝雀发布、按请求参数的路由、超时、限流降级等能力。

配置管理

配置管理

多种通信协议

根据技术栈与业务需求选择合适的通信协议,如 gRPC/Triple (HTTP/2)、TCP 二进制、HTTP+JSON 等,切换协议只需要修改一行配置,同时支持单个端口上的多协议发布

多语言 SDK

Dubbo3 提供了 Java、Golang、Rust、Node.js、Python 等多语言 SDK 实现,支持基于 IDL 的跨语言服务定义和基于 Protobuf、Json 的数据编码

可扩展性

以插件形式定义所有关键微服务组件,用户可基于 Filter、Router、Service Discovery、Configuration 等扩展点对接、适配自建或开源微服务生态。

云原生友好

Kubernetes 部署、Kubernetes 原生服务、Service Mesh。

可观测性

多维度的可观测指标(Metrics、Tracing、Access Logs)帮助了解服务运行状态,为持续定位、维护和优化服务提供依据,Admin 控制台帮助实现数据指标可视化展示

丰富生态

在以下微服务领域提供了众多官方生态适配,包括注册中心、配置中心、网关、限流降级、负载均衡、一致性事务、异步消息、Tracing、可观测等。

认证鉴权

支持基于 TLS 的传输链路认证与加密通信、基于 token 的请求级别认证,支持基于服务来源和目的地的鉴权检查,可结合证书分发等分布式组件构建零信任分布式体系。

服务网格(Service Mesh)

多种形态数据面支持,包括以 Thin SDK 模式与 Envoy 等一起部署或以 Proxyless 模式独立部署,所有模式均可以开源标准方式无缝接入 Istio、Consul 等服务治理体系。

关注社区

请通过以下任一或多个渠道关注社区动态,与社区开发者保持密切沟通.

Wechat 微信公众号

官方微信公众号(Apache Dubbo)

Dingtalk 钉钉群组

定期举办线上社区会议或开发者双周会

Twitter Twitter ▶

#apachedubbo

关于 Apache Dubbo 项目的国际社区动态与业界国际资讯

GitHub GitHub ▶

找到对应语言实现或生态项目的 GitHub 地址,即刻参与 Dubbo 项目源码贡献