📚 go-doudou - Awesome Go Library for Distributed Systems
A gossip protocol and OpenAPI 3.0 spec based decentralized microservice framework. Built-in go-doudou cli focusing on low-code and rapid dev can power up your productivity.
Detailed Description of go-doudou
go-doudou
Lightweight Golang Microservice Framework
- 💡 Starts from golang interface, no need to learn new IDL(interface definition language).
- 🔩 Powerful code generator cli built-in. After defining your interface methods, your only job is implementing your awesome idea.
- ⚡ Born from the cloud-native era. Built-in CLI can speed up your product iteration.
- 🔑 Built-in service governance support including remote configuration management, client-side load balancer, rate limiter, circuit breaker, bulkhead, timeout, retry and more.
- 📦️ Supporting both monolith and microservice architectures gives you flexibility to design your system.
Go-doudou(doudou pronounce /dəudəu/)is OpenAPI 3.0 (for REST) spec and Protobuf v3 (for grpc) based lightweight microservice framework. It supports monolith service application as well.
Read the Docs https://go-doudou.github.io/guide to Learn More.
Benchmark
Machine: MacBook Pro (16-inch, 2019)
CPU: 2.3 GHz 8 cores Intel Core i9
Memory: 16 GB 2667 MHz DDR4
ProcessingTime: 0ms, 10ms, 100ms, 500ms
Concurrency: 1000
Duration: 30s
go-doudou Version: v1.3.7
Credits
Give credits to following repositories and all their contributors:
- go-redis/redis_rate: go-doudou is relying on it to implement redis based rate limit feature
- apolloconfig/agollo: go-doudou is relying on it to implement remote configuration management support for Apollo
- nacos-group/nacos-sdk-go: go-doudou is relying on it to implement service discovery and remote configuration management support for Nacos
Community
Welcome to contribute to go-doudou by forking it and submitting pr or issues. If you like go-doudou, please give it a star!
Welcome to contact me from
- Facebook: https://www.facebook.com/bin.wu.94617999/
- Twitter: https://twitter.com/BINWU49205513
- Email: [email protected]
- WeChat:
- WeChat Group:
- QQ group:
🔋 JetBrains Open Source License
Go-doudou has been being developed with GoLand under the free JetBrains Open Source license(s) granted by JetBrains s.r.o., hence I would like to express my gratitude here.
License
MIT