golang 守护进程管理

添加守护进程

vim /etc/systemd/system/xxx.service

sh 复制代码
[Unit]
Description=Go Socket Service
After=network.target

[Service]
Type=simple
ExecStart=/data/quwan/quwan_ws
WorkingDirectory=/data/quwan
# 停止前发送信号
ExecStop=/bin/kill -SIGTERM $MAINPID
# 如果超过20s 进程还没停止,则强制重启
TimeoutStopSec=20s
Restart=always
# 重启在1s后重启
RestartSec=1s
# 标准输出到固定文件
StandardOutput=append:/data/quwan/output.log
#StandardOutput=file:/data/quwan/output.log
StandardError=inherit

[Install]
WantedBy=multi-user.target

执行 sudo systemctl daemon-reload

使用脚本启动

sh 复制代码
#!/bin/sh

if [ "$1" = "status" ]; then
  # 只显示状态和版本信息
  ./mq_quwan -v
  systemctl status mq_baobao.service
else
  # 默认重启服务并显示状态
  ./mq_quwan -v
  systemctl restart mq_baobao.service
  systemctl status mq_baobao.service
fi


#sudo systemctl daemon-reload
# sudo systemctl start baobao_go.service
# sudo systemctl enable baobao_go.service
# sudo systemctl status baobao_go.service
相关推荐
微软技术分享8 小时前
面向二进制安全的大模型多智能体框架
网络·安全·web安全
不会就选b9 小时前
Linux之TCP理论<1>
linux·运维·服务器
小π军9 小时前
操作系统面试题
java·linux·服务器
Android系统攻城狮11 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_samples_min调用流程与实战(六十)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
ttwuai11 小时前
Go后台管理系统开源项目:4个官方仓库怎么追溯和核验
开发语言·golang·开源
谢亮_vipxieliang11 小时前
Go Worker Pool 设计——从原理到生产级实现
开发语言·后端·golang
谢亮_vipxieliang12 小时前
Go Channel 高级模式——从底层原理到扇出扇入实战
java·数据库·golang
大猫会长14 小时前
调用codebuddy集成的supabase授权白屏解决方法
linux·运维·服务器
搁浅小泽14 小时前
新能源汽车多合一压缩机控制器CAN网络测试规范
网络·汽车
谢亮_vipxieliang14 小时前
Go WaitGroup与Once——并发同步的基石
开发语言·后端·golang