4 ms·
I had to dig in a bit to see the whole scope of this project. It seems go-zero has: 1) Go library/main that wraps gRPC handlers to build a server, like Dropwiz
by no_circuit 5y ago
I had to dig in a bit to see the whole scope of this project. It seems go-zero has:
1) Go library/main that wraps gRPC handlers to build a server, like Dropwizard or TwitterServer?
2) A CLI tool "goctl" that does code generation for setting up the code layout (server and client API stubs), as well as some Docker/k8s functionality for deploying.
I'm not into Go so can't comment on aspects like the performance benchmark.
However the project documentation is quite interesting if you'd like to see how, presumably the company for which this was built for, their production environment is set up like CI/CD, logging, etc.
It could be more helpful if the architecture diagram showed the roles of the different pieces better. For example it isn't immediately clear what component does authentication so then the JWT can be used for service authorization. So the question would be is how much is the framework tied to some assumptions in a production setup.
- patrickevans 5y agoThanks for your comment! go-zero is easy to use with docker/Kubernetes, we built a command line tool to generate the Dockerfile and Kubernetes deployment files. It's easy to use with ECSs as well, because Go packages it into a single executable binary, you can use tools like supervisord to manage it easily. As the name of go-zero, I was trying to tell 2 things: 1. go from zero with microservices development 2. go from zero when you get something hard to fix, perhaps you think the problem itself in a wrong way Also, go-zero consists of 3 main parts: 1. api gateway, along with a newly created simple API idl to describe apis 2. zRPC, with the microservices governance built on top of gRPC 3. goctl, a command line tool to make microservices development much easier Not sure if I answered your question?