关注微信公众号《云原生CTO》更多云原生干货等你来探索
云原生技术云原生开发面试技巧解答CTOGoGoGoGoRustPythonIstiocontainerdCoreDNSEnvoyetcdFluentdHarborHelmJaegerKubernetesOpen Policy AgentPrometheusRookTiKVTUFVitessArgoBuildpacksCloudEventsCNIContourCortexCRI-OFalcoFluxgRPCKubeEdgeLinkerdNATSNotaryOpenTracingOperator FrameworkSPIFFESPIREThanos

每个开发人员都应该知道的 5 个 Golang 模块/包
GoGoogleGolangLaravelGo5GolangGoose — 数据库迁移
GooseGolang
Goose运行以下命令
$ go get github.com/pressly/goose
您也可以决定使用轻量级版本:
$ go build -tags='no_postgres no_mysql no_sqlite3' -i -o goose ./cmd/goose
GooseGooseSQL$ goose create new_column sql
有关更深入的文档,我建议您访问他们的 官方页面
https://github.com/pressly/goose
Go Kit — 微服务
Go Kithttps://github.com/go-kit/kit

Go KitGo Kit$ go get github.com/go-kit/kit
Go Kit创建一个新项目并为自己创建一个新模型。
package article
import (
"time"
)
type Article struct {
ID string `json:"id"`
Username string `json:"username"`
Content string `json:"content"`
Text string `json:"title"`
CreatedOn time.Time `json:"created_on"`
}
您可以在服务中使用此模型:
package article
import (
"context"
)
type TodoService interface {
GetAllForUser(ctx context.Context, username string) ([]Article, error)
GetByID(ctx context.Context, id string) (Article, error)
Add(ctx context.Context, article Article) (Article, error)
Update(ctx context.Context, id string, article Article) error
Delete(ctx context.Context, id string) error
}
Authboss — 模块化身份验证。
Authboss
Authboss您可以通过运行以下命令来安装` Authboss:``
$ go get -u github.com/volatiletech/authboss/v3
AuthbossAuthbosshttps://github.com/volatiletech/authboss
Gingko — 测试框架。
GingkoGolanghttps://onsi.github.io/ginkgo/

Gingko要安装此软件包,请运行以下命令:
$ go get github.com/onsi/ginkgo/ginkgo
GingkoGingko$ ginkgo bootstrap
如需进一步解释,请查看他们的 优秀文档 。
https://onsi.github.io/ginkgo/
NSQ - 消息平台
NSQhttps://nsq.io/

NSQNSQ$ git clone https://github.com/nsqio/nsq
$ cd nsq
$ make
NSQNSQhttps://nsq.io/overview/quick_start.html
Go5.3 参考资料
参考[1]
参考资料
参考: https://medium.com/golangd/5-golang-modules-packages-that-every-developer-should-know-c945f40ea173