为了账号安全,请及时绑定邮箱和手机立即绑定

在 CentOS 7 上将 Go 作为守护程序网络服务器运行

在 CentOS 7 上将 Go 作为守护程序网络服务器运行

Go
慕容3067478 2021-10-18 16:12:38
我正在尝试从 PHP 迁移到 Go 并计划完全删除 nginx。但是我不知道如何在后台将 go http 网络服务器作为守护进程运行,也不知道如何在重新启动时自动启动网络服务器,或者如何终止该进程。使用 nginx 我所做的就是$ systemctl start nginx.service$ systemctl restart nginx.service$ systemctl stop nginx.service$ systemctl enable nginx.service$ systemctl disable nginx.service这很方便,但似乎我不能用 Go http 服务器来做到这一点。我必须像任何其他 Go 程序一样编译和运行它。对于这些问题,有哪些解决方案?
查看完整描述

1 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

这与其说是 Go 问题,不如说是系统管理问题。有多种方法可以向 systemd 添加命令(如这篇博文)。

就我个人而言,我更喜欢将我的应用程序与我的服务分开,因此我倾向于将supervisord用于我的程序,这些程序往往会频繁启动、停止或重新启动。supervisord 的文档非常简单,但基本上你可以创建一个配置文件来描述你想要运行的服务,用于运行它的命令(例如/path/to/go/binary -flag)你想要如何处理启动、停止、故障恢复、日志记录等....


查看完整回答
反对 回复 2021-10-18
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信