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
相关推荐
大E帝国子民11 分钟前
OpenCloudOS Server 9 安装 Nginx 完整指南
前端·网络·nginx
无足鸟ICT29 分钟前
【RHCA+】管道符
linux·运维·服务器
老约家的可汗34 分钟前
Linux的库制作和原理
linux·运维·服务器
m0_738120721 小时前
PHP代码审计基础——面向对象(四)
android·开发语言·网络·安全·github·php
Geeys1 小时前
拼多多新店快速起流量完整实操
大数据·网络·人工智能
玖玥拾2 小时前
C# 语言进阶(十四)Unity UI界面开发 + 网络消息联动
服务器·开发语言·网络·ui·unity·c#·游戏引擎
名字还没想好☜2 小时前
Go 内存逃逸分析:什么时候变量跑到堆上
开发语言·算法·性能优化·golang·go·内存逃逸
hbugs0012 小时前
PNETLab vs EVE-NG Pro 流量洞察功能底层架构技术白皮书
网络·架构·eve-ng·bpf·流量洞察
巴啦啦小魔仙变身3 小时前
SIGINT = Signal Interrupte
linux·服务器·python
不会C语言的男孩3 小时前
TCP通信可视化工具,含下载地址
服务器·网络·安全