Gin程序热加载

文章目录

  • Gin程序热加载
    • 1 项目热加载
      • 1.1 工具一:fresh
      • 1.2 工具二:codegangsta/gin
      • 1.3 工具三:bee
      • 1.4 补充

Gin程序热加载

1 项目热加载

我们在Flask或者Django框架下开发都是支持实时加载的,当我们对代码进行修改时,程序能够自动重新加载并执行,这在我们开发中是非常便利的,可以快速进行代码测试,省去了每次手动重新编译。

所谓热加载就是当我们对代码进行修改时,程序能够自动重新加载并执行,这在我们开发中是非常便利的,可以快速进行代码测试,省去了每次手动重新编译

beego 中我们可以使用官方给我们提供的 bee 工具来热加载项目,但是 gin 中并没有官方提供的热加载工具,这个时候我们要实现热加载就可以借助第三方的工具

1.1 工具一:fresh

Fresh是一个命令行工具,每次保存Go或模版文件时,该工具都会生成或重新启动Web应用程序。Fresh将监视文件事件,并且每次创建/修改/删除文件时,Fresh都会生成并重新启动应用程序。如果go build返回错误,它会将记录在tmp文件夹中

// 0 地址 :https://github.com/gravityblast/fresh

// 1 安装
go get github.com/pilu/fresh

// 2 切换到项目路径
cd /path/to/myapp

// 3 执行fresh,不需要直接启动项目了,使用fresh启动gin项目即可
fresh  

1.2 工具二:codegangsta/gin

gin是一个简单的命令行实用程序,用于实时重新加载Go web应用程序。只需在你的应用程序目录中运行gin,你的web应用程序就会以gin作为代理。当gin检测到更改时,它会自动重新编译代码。你的应用程序将在下次收到HTTP请求时重新启动

// 0 地址 :https://github.com/codegangsta/gin

// 1 安装
go get github.com/codegangsta/gin

// 2 查看帮助
gin help

// 3 使用
gin run main.go  
// 4 访问一下http://127.0.0.1:3000,再访问http://127.0.0.1:8000

// 5 或者使用以下命令启动,访问3000会被代理到8000
// --bin value, -b value    name of generated binary file (default: "gin-bin")
gin -p 3000 -a 8000 -b gin-bin --all run

1.3 工具三:bee

bee是beego框架的热编译工具,同样可以对GIN框架进行热编译,使用起来很方便,功能也有很多,这里就不展开了,喜欢的可以去看文档,解锁更多玩法。

// 0 地址 :https://github.com/beego/bee

// 1 安装
go get github.com/beego/bee

// 2 使用
bee run

// 3 访问:http://127.0.0.1:8000/

1.4 补充

除上述3种外,还有更多的热加载工具,但是随便哪一种都够用了,不过个人更喜欢用fresh和bee。使用起来十分简单。

另外,使用热加载之前,因为go 下载下来的工具不是放在go.exe(windows)文件所在目录(bin\go.exe),而是同级的bin文件夹下(bin\bin\),因此需要添加下环境变量才能使用。

你可能感兴趣的:(#,gin,linux,运维,服务器)