在 CentOS 系统中,可以使用 systemd 来管理和监控进程,实现进程的自动重启
/etc/systemd/system/ 目录下创建一个名为 myapp.service 的文件。使用文本编辑器打开该文件,如 vi 或 nano:sudo vi /etc/systemd/system/myapp.service
myapp.service 文件中,根据您的实际情况进行修改:[Unit]
Description=MyApp Service
After=network.target
[Service]
User=myuser
WorkingDirectory=/path/to/your/app
ExecStart=/path/to/your/app/myapp
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
Description:服务的描述。User:运行应用程序的用户。WorkingDirectory:应用程序的工作目录。ExecStart:启动应用程序的命令。Restart:设置重启策略,这里我们设置为 always,表示始终重启。RestartSec:重启间隔时间,单位为秒。保存并关闭文件。
重新加载 systemd 配置,使新的服务单元文件生效:
sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp
现在,如果您的应用程序因为任何原因崩溃或停止运行,systemd 将自动重启它。您可以通过以下命令查看服务状态:
sudo systemctl status myapp