dubbogo - Apache Dubbo的go语言实现

Go for Apache Dubbo

项目github地址(已经并入dubbo社区)

Build Status codecov


Apache Dubbo Go 语言实现

证书

Apache License, Version 2.0

代码设计

基于dubbo的extension模块和分层的代码设计(包括 protocol layer, registry layer, cluster layer, config 等等)。我们的目标是:你可以对这些分层接口进行新的实现,并通过调用 extension 模块的“ extension.SetXXX ”方法来覆盖 dubbo-go [同 go-for-apache-dubbo ]的默认实现,以完成自己的特殊需求而无需修改源代码。同时,欢迎你为社区贡献有用的拓展实现。

框架设计

关于详细设计请阅读 code layered design

功能列表

实现列表:

  • Role: Consumer(√), Provider(√)
  • Transport: HTTP(√), TCP(√)
  • Codec: JsonRPC v2(√), Hessian v2(√)
  • Registry: ZooKeeper(√)
  • Cluster Strategy: Failover(√)
  • Load Balance: Random(√)
  • Filter: Echo Health Check(√)

开发中列表:

  • Cluster Strategy: Failfast/Failsafe/Failback/Forking
  • Load Balance: RoundRobin/LeastActive/ConsistentHash
  • Filter: TokenFilter/AccessLogFilter/CountFilter/ActiveLimitFilter/ExecuteLimitFilter/GenericFilter/TpsLimitFilter
  • Registry: etcd/k8s/consul

任务列表:

  • routing rule (dubbo v2.6.x)
  • monitoring (dubbo v2.6.x)
  • dynamic configuration (dubbo v2.7.x)
  • metrics (dubbo v2.7.x) waiting dubbo's quota

你可以通过访问 roadmap 知道更多关于 dubbo-go 的信息

1 个评论

excellent work. come on.

要回复文章请先登录注册