Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/unionj-cloud/go-doudou
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.
https://github.com/unionj-cloud/go-doudou
apollo cloud-native etcd framework go golang grpc grpc-go microservice nacos openapi orm rate-limiting rest restful-api service-mesh swagger3
Last synced: about 13 hours ago
JSON representation
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.
- Host: GitHub
- URL: https://github.com/unionj-cloud/go-doudou
- Owner: unionj-cloud
- License: mit
- Created: 2021-02-24T07:21:40.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-20T15:40:15.000Z (about 2 months ago)
- Last Synced: 2024-10-29T17:27:37.028Z (about 1 month ago)
- Topics: apollo, cloud-native, etcd, framework, go, golang, grpc, grpc-go, microservice, nacos, openapi, orm, rate-limiting, rest, restful-api, service-mesh, swagger3
- Language: Go
- Homepage: https://go-doudou.github.io
- Size: 33.4 MB
- Stars: 1,429
- Watchers: 95
- Forks: 250
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - go-doudou - 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. (Distributed Systems / Search and Analytic Databases)
- awesome-go - go-doudou - 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. Stars:`1.4K`. (Distributed Systems / Search and Analytic Databases)
- awesome-golang-repositories - go-doudou - doudou蝴暦県oudou pronounce /d�スud�スu/蝴暦初s OpenAPI 3.0 spec based lightweight microservice framework. It supports monolith service application as well. Currently, it supports RESTful service only. 驫晏奥�ス�ス�ェ�晢ソス蝠」�ス蝴齢ェ付tps://go-doudou.unionj.cloud (Repositories)
- awesome-go-extra - go-doudou - doudou(doudou pronounce /dəudəu/)is OpenAPI 3.0 spec based lightweight microservice framework. It supports monolith service application as well. Currently, it supports RESTful service only. 中文文档地址:https://go-doudou.unionj.cloud|844|151|3|2021-02-24T07:21:40Z|2022-08-22T03:48:39Z| (Distributed Systems / Advanced Console UIs)
README
# 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](https://go-doudou.github.io/guide) to Learn More.
## Benchmark
![benchmark](./benchmark.png)
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`[Checkout the test code](https://github.com/wubin1989/go-web-framework-benchmark)
## Credits
Give credits to following repositories and all their contributors:
- [go-redis/redis_rate](github.com/go-redis/redis_rate): go-doudou is relying on it to implement redis based rate limit feature
- [apolloconfig/agollo](https://github.com/apolloconfig/agollo): go-doudou is relying on it to implement remote configuration management support for [Apollo](https://github.com/apolloconfig/apollo)
- [nacos-group/nacos-sdk-go](https://github.com/nacos-group/nacos-sdk-go): go-doudou is relying on it to implement service discovery and remote configuration management support for [Nacos](https://github.com/alibaba/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/](https://www.facebook.com/bin.wu.94617999/)
- Twitter: [https://twitter.com/BINWU49205513](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