Apache Dubbo Go 语言实现,架起 Java 和 Golang 之间的桥梁,与 gRPC/Dubbo 生态互联互通,带领 Java 生态享受云原生时代的技术红利。请访问Dubbo 官网查看快速开始和文档。
Dubbo-go 生态覆盖多种网络协议:Triple、Dubbo、JSONRPC、gRPC、HTTP、HTTP2 等。
- Triple 协议是 Dubbo3 生态主推的协议,是基于 gRPC 的扩展协议,底层为HTTP2,可与 gRPC 服务互通。相当于在 gRPC 可靠的传输基础上,增加了 Dubbo 的服务治理能力。
- Dubbo 协议是 Dubbo 生态的传统协议,dubbo-go 支持的 dubbo 协议与dubbo2.x 版本兼容,是Go 语言和旧版本 Dubbo 服务互通的不错选择。
- 我们支持通过貔貅网关暴露 Triple/Dubbo 协议到集群外部,调用者可以直接通过HTTP 协议调用 Dubbo-go 服务。
-
注册中心:
支持 Nacos(阿里开源) 、Zookeeper、ETCD、Consul、Polaris-mesh(腾讯开源) 等服务注册中间件,并拥有可扩展能力。我们也会根据用户使用情况,进一步扩展出用户需要的实现。
-
配置中心
开发者可以使用Nacos、Apollo(携程开源)、Zookeeper 进行框架/用户的配置的发布和拉取。
-
集群策略: Failover, Failfast, Failsafe/Failback, Available, Broadcast, Forking 等
-
负载均衡策略: 柔性服务, Random, RoundRobin, LeastActive, ConsistentHash 等
-
过滤器: Echo, Hystrix, Token, AccessLog, TpsLimiter, ExecuteLimit, Generic, Auth/Sign, Metrics, Tracing, Active, Seata, Sentinel 等
-
泛化调用
-
监控: Prometheus
-
链路追踪: Jaeger, Zipkin
-
路由器: Dubbo3 Router
- Dubbo-go 快速开始: 中文 🇨🇳, English 🇺🇸
- Dubbo-go 样例: 该项目提供了一系列的样例,以展示Dubbo-go的每一项特性以及帮助你将Dubbo-go集成到你的系统中。
- Dubbo-go 百科
请访问CONTRIBUTING来了解如何提交更新以及贡献工作流。
请使用bug report 模板报告错误,使用enhancement 模版提交改进建议。
- 钉钉群: 23331795
若你正在使用 apache/dubbo-go 且认为其有用或者想对其做改进,请添列贵司信息于 用户列表,以便我们知晓。
[查看更多用户示例](apache#2)- Dubbo Ecosystem Entry - Apache Dubbo 群组的相关开源项目
- dubbo-go-pixiu - 动态高性能 API 网关,支持 Dubbo 和 Http 等多种协议
- dubbo-go-samples - Dubbo-go 项目案例
- dubbo-getty - Netty 风格的异步网络 IO 库,支持 tcp、udp 和 websocket 等协议
- triple - 基于 HTTP2 的 Dubbo-go 3.0 协议网络库
- dubbo-go-hessian2 - 供 Dubbo-go 使用的 hessian2 库
- gost - 供 Dubbo-go 使用的基础代码库
Apache Dubbo-go使用Apache许可证2.0版本,请参阅LICENSE文件了解更多。