golang 怎么做热更新_后端开发

Golang规范库的http部份供应了壮大的web运用支撑,再加上negroni等中间件框架的支撑,能够开发高性能的web运用(如供应Restful的api效劳等)。 (引荐进修:go)

一般这些web运用布置在多台Linux操纵系统的运用效劳器上,并用Nginx等做为反向代办,完成高可用的集群效劳。当运用版本升级时,怎样完成比较文雅的多态效劳器的版本更新呢?

问题剖析

Web运用的更新,我以为大概须要斟酌几个方面的问题:

编译好的运用二进制文件、配置文件上传到效劳器上;

运用效劳器能感知到有新的版本上传;

在没有住手效劳的情况下,热更新版本;

最好一切的更新历程,能够剧本化,削减手动操纵的毛病。

计划

实在,go社区有一些开源项目,能够自动检测web运用的转变,并完成自动的更新,但这些运用都是检测源码、资本文件的更新,启动build历程,完成自动的编译和重启。

比方 gin和 fresh,这些运用合适运用于开发和测试阶段,大概并不合适运用的布置和更新,但供应了优越的思绪。

布置环境的目次及版本的上传

我将宣布的运用二进制文件和配置文件,存放在某个目次下,如 ~/app/release,每一个版本都保留在这个目次中,比方app.1.0、app.1.1、app.2.0,一旦发现有问题,能够实时的回滚

以上就是golang 怎么做热更新的细致内容,更多请关注ki4网别的相干文章!

Leave A Comment