中文
Apache Dubbo-goApache Dubbo Go Implementation to bridge the gap between java and go.
License
Apache License, Version 2.0
Release note
v1.1.0 - Sep 7, 2019 the first release after transferred to apache
v1.0.0 - May 29, 2019 compatible with dubbo v2.6.5
Project Architecture
Both extension module and layered project architecture is according to Apache Dubbo (including protocol layer, registry layer, cluster layer, config layer and so on), the advantage of this arch is as following: you can implement these layered interfaces in your own way, override the default implementation of dubbo-go by calling 'extension.SetXXX' of extension, complete your special needs without modifying the source code. At the same time, you are welcome to contribute implementation of useful extension to the community.
If you want to know more about dubbo-go, please visit this reference Project Architecture design
Feature list
Finished List:
-
Role
- Consumer
- Provider
-
Transport
- HTTP
- TCP
-
Codec
- JsonRPC V2
- Hessian V2
- json for grpc
-
Protocol
-
Router
-
Registry
-
Dynamic Configure Center & Service Management Configurator
-
Cluster Strategy
- Failover
- Failfast
- Failsafe/Failback
- Available
- Broadcast
- Forking
-
Load Balance
- Random
- RoundRobin
- LeastActive
- ConsistentHash
-
Filter
-
Invoke
-
Monitor
- Opentracing API
- Prometheus
-
Tracing
-
Metadata Center
-
Service discovery
You can know more about dubbo-go by its roadmap.
Document
dubbo-doc or dubbo-go-doc-list
Quick Start
dubbo-go-samples gives many examples to tell u how to use dubbo-go. Please read the dubbo-samples/golang/README.md carefully to learn how to dispose the configuration and compile the program.
Running unit tests
Run
make verify
Verify license
make license
Run unit test
make test
Build
Please move to dubbo-samples/golang
Contributing
If you are willing to do some code contributions and document contributions to Apache/dubbo-go, please visit contribution intro.
Community
If u want to communicate with our community, pls scan the following dubbobo Ding-Ding QR code or search our commnity DingDing group code 31363295.
If u want to visit the wechat group, pls add my wechat AlexanderStocks.
We welcome the friends who can give us constructing suggestions instead of known-nothing.
Benchmark
Benchmark project dubbo-go-benchmark.
About dubbo-go benchmarking report, please refer to dubbo benchmarking report & jsonrpc benchmarking report.
User List
If you are using apache/dubbo-go and think that it helps you or want do some contributions to it, please add your company to to the user list to let us know your needs.