golang 有没有后台服务相关的库推荐?

2022-04-18 20:36:30 +08:00
 raw0xff

想实现终端执行程序,选择开启服务,退出程序后进程后台驻留。当要改变或停止服务操作时再执行程序。(像宝塔 BT 的 bt 那样) 问题是程序执行后退出时如何后台驻留?再次执行程序时不再启动新进程?是不是有现成的库可以用?

新手请教,请大佬指路,给几个关键词我去查,感谢!

3058 次点击
所在节点    Go 编程语言
11 条回复
dilu
2022-04-18 20:48:16 +08:00
可以直接用 fork 开新的进程处理,关闭进程的话就在子进程监听信号即可
xiusedelang
2022-04-18 20:54:18 +08:00
mengyx
2022-04-18 21:53:07 +08:00
neoblackcap
2022-04-19 01:24:24 +08:00
你实际需要的可能是一个守护进程,以及一个与它交互的命令行客户端。
none
2022-04-19 01:26:40 +08:00
supervisor 是不是你需要的?
zeusho871
2022-04-19 05:04:50 +08:00
看看
nps 怎么实现的
littlezzll
2022-04-19 08:49:11 +08:00
systemd
yin1999
2022-04-19 10:42:44 +08:00
推荐 systemd, screen ,前者适合做成服务,后者适合在后台跑脚本啥的
darknoll
2022-04-19 11:08:53 +08:00
由部署实现,不要放在代码里面
Misakas
2022-04-19 13:24:20 +08:00
咱有一篇没写完的博文,说了 golang 对 service 提供的支持
https://www.misakas.com/default/register-the-window-service-with-a-go-program/
biubiuF
2022-04-21 00:07:34 +08:00
做一个 rpc 的 cli

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/847748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX