Apache Dubbo-go 架起 Java 和 go 之间的桥梁
Apache Dubbo Go 语言实现,架起 java 和 go 之间的桥梁,与 gRPC / Spring Cloud 生态互联互通,带领 Java 生态享受云原生时代的技术红利。
工程架构
基于 dubbo 的 extension 模块和分层的代码设计(包括 protocol layer, registry layer, cluster layer, config 等等)。我们的目标是:你可以对这些分层接口进行新的实现,并通过调用 extension 模块的 extension.SetXXX 方法来覆盖 dubbo-go (同 go-for-apache-dubbo)的默认实现,以完成自己的特殊需求而无需修改源代码。同时,欢迎你为社区贡献有用的拓展实现。
关于详细设计请阅读 code layered design
功能列表
实现列表:
- 角色端
- Consumer
- Provider
- 传输协议
- HTTP
- TCP
- 序列化协议
- JsonRPC V2
- Hessian V2
- json for grpc
- protobuf
- 协议
- Dubbo
- Triple
- Jsonrpc2.0
- gRPC
- RESTful
- 路由器
- Dubbo3统一路由规则
- 注册中心
- ZooKeeper
- etcd v3
- nacos
- consul
- k8s
- 动态配置中心与服务治理配置器
- Zookeeper
- apollo
- nacos
- 集群策略
- Failover
- Failfast
- Failsafe/Failback
- Available
- Broadcast
- Forking
- 负载均衡策略
- Random
- RoundRobin
- LeastActive
- ConsistentHash
- 过滤器
- Echo Health Check
- 服务熔断&降级
- TokenFilter
- AccessLogFilter
- TpsLimitFilter
- ExecuteLimitFilter
- GenericServiceFilter
- Auth/Sign
- Metrics filter
- Tracing filter
- 调用
- 泛化调用
- 监控
- Opentracing API
- Prometheus
- Tracing
- For jsonrpc
- For dubbo
- For grpc
- 元数据中心
- Nacos(Local)
- Zookeeper(Local)
- Etcd(Local)
- Consul(Local)
- Zookeeper(Remoting)
- 工具箱
- Dubbo-go-cli
你可以通过访问 roadmap 知道更多关于 dubbo-go 的信息。
快速开始
dubbo-samples/golang 这个项目的事例展示了如何使用 dubbo-go 。请仔细阅读 dubbo-samples/golang/README.md 学习如何处理配置并编译程序。
github 地址:https://github.com/apache/dubbo-go
以上是 Apache Dubbo-go 架起 Java 和 go 之间的桥梁 的全部内容, 来源链接: utcz.com/p/233430.html