Midk9t's Blog

如何使用gin-jwt实现用户登录模块

Jwt简介 Jwt就是Json Web Token,它是RFC 7519定义的一种令牌结构,一般用于服务端在客户端认证成功后返回给客户端保存,假如客户端后续在http请求头带上这个令牌,那么就可以证明它的身份,实现免登录。

Go项目惯用结构

前言 无论我们用什么语言,做什么项目,都应该事先对项目的整体文件夹布局做长远考虑:什么文件应该放哪里,这其实十分重要,一个清晰简洁的项目结构让其他贡献者更容易上手,也让自身的维护与拓展更加方便(还能让开发者显得专业懂行)。Go生态圈里有一个项目的常用结构,它十分普遍且广受认可,今天在这里记录一下,以后新建项目时好当个cheatsheet来用。

Go服务如何实现优雅关停

什么是优雅关停 在我们需要关停如http服务等不断循环工作的业务进程时,一般采取以下两种方式: 在Linux命令行ctrl + c,其实背后就是系统发送SIGINT信号 通过kill或者systemctl stop等方式发送SIGTERM信号 那么假如进程在当前处理工作还没完成时收到这些信号,则当前工作就会处于完成一半然后放弃的情况,这就会对业务产生可大可小的影响,所以我们需要“优雅”地处理这些关停信号,在系统发出后拦截它们,并在进程完全退出前处理关停前的一些必要工作。下面就是一个用go channel来实现关停的简单例子。