在开发模式下可以golang热插拔吗?

时间:2018-06-10 02:05:49

标签: go

对于生产环境,我可以接受golang不能热插拔。但是对于开发模式,我是否必须重新编译整个项目,并重新启动服务器,甚至只需修改1行代码?有没有办法快速热交换代码来检查调试结果?

1 个答案:

答案 0 :(得分:2)

您使用或创建查找更改的观察程序进程,在识别更改时重新编译并重新启动服务器。

以下是一些例子。我使用Beego并且bee一直在开发过程中重建我的服务器。

<强>杜松子酒

  

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

<强>新鲜

  

Fresh会监视文件事件,每次创建/修改/删除文件时,它都会构建并重新启动应用程序。如果go build返回错误,它会将其记录在tmp文件夹中。

专门针对Traffic,Martini和gocraft / web的新作品。

Beego bee

Beego网络框架也是这样做的。这是在bee中实现的,这是一个用于运行Beego的CLI工具。

bee默认会监视所有项目目录,并且还可以选择查看vendor目录。