GitHub - apache/dubbo-go: Go Implementation For Apache Dubbo
source link: https://github.com/apache/dubbo-go
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
Go for Apache Dubbo 中文
Apache Dubbo Go Implementation.
License
Apache License, Version 2.0
Release note
v1.0.0 - May 29, 2019 compatible with dubbo v2.6.5
Project Architecture
Extension module and layered code design based on dubbo (include protocol layer,registry layer,cluster layer,config layer and so on), Our goal is: you can implement these layered interfaces in a new way, and override the default implementation of dubbo-go[same go-for-apache-dubbo] by calling 'extension.SetXXX' of extension, and complete your special needs without modifying the source code. At the same time, you are welcome to contribute implementation of useful expansion to the community.
About detail design please refer to code layered design
Feature list
Finished List:
- Role: Consumer(√), Provider(√)
- Transport: HTTP(√), TCP(√)
- Codec: JsonRPC v2(√), Hessian v2(√)
- Registry: ZooKeeper(√)
- Cluster Strategy: Failover(√)
- Load Balance: Random(√)
- Filter: Echo Health Check(√)
Working List:
- Cluster Strategy: Failfast/Failsafe/Failback/Forking
- Load Balance: RoundRobin/LeastActive/ConsistentHash
- Filter: TokenFilter/AccessLogFilter/CountFilter/ActiveLimitFilter/ExecuteLimitFilter/GenericFilter/TpsLimitFilter
- Registry: etcd/k8s/consul
Todo List:
- routing rule (dubbo v2.6.x)
- metrics (dubbo v2.7.x) waiting dubbo's quota
- dynamic configuration center & metadata center (dubbo v2.7.x)
- tracing (dubbo ecosystem)
You can know more about dubbo-go by its roadmap.
Quick Start
The subdirectory examples shows how to use dubbo-go. Please read the examples/README.md carefully to learn how to dispose the configuration and compile the program.
Benchmark
Benchmark project please refer to go-for-apache-dubbo-benchmark
About dubbo-go benchmarking report, please refer to dubbo benchmarking report & jsonrpc benchmarking report
User List
Stargazers
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK