We are mosting likely to establish go remainder API and also gRPC for manufacturing for our customer. We located some collections and also plans.
Relax Solutions( https):
- Common collection – Go Plans
- Gin structure
- Gorilla/Mux
- Go package
Examination instance structure: - screening plan – screening – Go Plans
- GitHub – stretchr/testify: A toolkit with usual assertions and also buffoons that plays well with the conventional collection
HTTP Tons Screening: Jmeter and also Vegeta.
gRPC: grpc plan – google.golang.org/grpc – Go Plans
tons screening device: GitHub – bojand/ghz: Straightforward gRPC benchmarking and also tons screening device
Please recommend ideal structure and also lib.
Many thanks ahead of time! Value your reaction.
Hi! I’ll attempt to be a lot more unbiased as feasible. Normally i favor to prevent internet structures for little or “center” dimension tasks since when you include an internet f. you’re presenting even more threats regarding maintenance/bugs for long period of time running strategies, even more dependences (which implies even more weight and also arrangement changes) and also, a minimum of at your primary steps on a details internet f., a quantity of time to discover its exactly how to
- For small/simple tasks i would certainly choose Go Sexually transmitted disease Collection + stdlib
http.ServeMux
+ go screening devices (what you have actually provided at factors 4 5 and also 6 stand). gRPC authorities go plan. - For even more intricate tasks I would certainly make use of the very same pile essentially, replacing
http.ServeMux
with chi router (especially fantastic for middleware extensive applications) and also, if you actually require it, presenting gorm I would certainly make use of Gin just if the application is huge and also the complete Go code would certainly result to twist, or if you require a number of Gin abilities.
So, why not gorilla/mux
? IMHO gorilla is really not well preserved, and also httprouter
is not preserved in all and also keep in mind that Gin is improved httprouter
As a choice, I would certainly make use of Fiber structure, improved fasthttp
, a lot more performant than Gin and also others, spick-and-span, yet not stdlib pleasant. It’s a various other means to go
.