rpcx
rpcx is a RPC framework like Alibaba Dubbo and Weibo Motan.https://github.com/smallnest/rpcx
rpcx is created for targets:
1. Simple: easy to learn, easy to develop, easy to intergate and easy to deploy
2. Performance: high perforamnce (>= grpc-go)
3. Cross-platform: support raw slice of bytes, JSON, Protobuf and MessagePack. Theoretically it can be used with java, php, python, c/c++, node.js, c# and other platforms
4. Service discovery and service governance: support zookeeper, etcd and consul.
User or *User - Do We Need Struct Pointers Everywhere?
https://preslav.me/2023/02/06/golang-do-we-need-struct-pointers-everywhere
https://preslav.me/2023/02/06/golang-do-we-need-struct-pointers-everywhere
Fast and dynamic encoding of Protocol Buffers in Go
https://vincent.bernat.ch/en/blog/2023-dynamic-protobuf-golang
https://vincent.bernat.ch/en/blog/2023-dynamic-protobuf-golang
gofumpt
Enforce a stricter format than gofmt, while being backwards compatible.https://github.com/mvdan/gofumpt
go-pretty
Utilities to prettify console output of tables, lists, progress-bars, text, etc. with a heavy emphasis on customization.https://github.com/jedib0t/go-pretty
Structured logging in Go with slog
A quick introduction to slog, the structured logging library for Go.https://mrkaran.dev/posts/structured-logging-in-go-with-slog
Golang Quirks & Intermediate Tricks
Pt 1:
https://eblog.fly.dev/quirks.htmlPt 2:
https://eblog.fly.dev/quirks2.htmllefthook
Fast and powerful Git hooks manager for any type of projects.https://github.com/evilmartians/lefthook
hoverfly
Lightweight service virtualization/API simulation tool for developers and testershttps://github.com/SpectoLabs/hoverfly
The complete guide to OpenTelemetry in Golang. (17 Feb 2023)
This guide should take you from zero to production.https://www.komu.engineer/blogs/11/opentelemetry-and-go
How to Publish Your Golang Binaries with Goreleaser
https://www.kosli.com/blog/how-to-publish-your-golang-binaries-with-goreleaser
https://www.kosli.com/blog/how-to-publish-your-golang-binaries-with-goreleaser