Python程序后台运行的五种方式

现在我来详细讲解 Python程序后台运行的五种方式 的完整攻略。

1. 使用nohup命令

nohup是一个常用的命令,可在远程服务器上运行命令行应用程序,并将输出重定向到文件nohup.out中。您可以使用以下命令将Python脚本在后台执行,无论是否注销SSH连接:

nohup python script.py &

使用“&”符号在后台运行脚本,执行此命令后,控制台将返回进程号,并且您可以随时查看nohup.out文件来检查输出。

2. 使用screen命令

使用screen命令可以在后台运行多个命令行会话,并且甚至可以在SSH连接断开后保持会话。可以使用以下命令来运行Python脚本:

screen -S mysession  
python script.py

这将创建名为“mysession”的新会话,并在其中启动Python脚本。按“Ctrl + A + D”键组合来断开会话,返回到控制台或另一个屏幕会话。

3. 使用systemd服务

Systemd是Linux系统的一个初始化系统,并提供了一种方便的方法来启动、停止和管理系统服务。您可以使用以下过程在systemd服务中运行Python脚本:

  1. 编写systemd服务配置文件。例如,在“/etc/systemd/system/”目录下创建名为“myscript.service”的文件,其内容为:
[Unit]  
Description=My Python Script  
After=multi-user.target  
  
[Service]  
Type=idle  
ExecStart=/usr/bin/python3 /path/to/script.py  
  
[Install]  
WantedBy=multi-user.target
  1. 保存文件并重载systemd守护程序配置:
sudo systemctl daemon-reload
  1. 启动服务:
sudo systemctl start myscript
  1. 您可以查看服务状态并检查是否存在错误:
sudo systemctl status myscript

4. 使用celery任务队列

Celery是Python中一个流行的任务队列实现,使多进程执行变得简单。您可以使用以下过程在Celery任务队列中运行Python脚本:

  1. 安装Celery:使用pip安装celery:
pip install celery
  1. 编写任务代码:
from celery import Celery  
app = Celery('task', backend='rpc://', broker='amqp://localhost')  
  
@app.task  
def mytask():  
  # 任务逻辑
  1. 启动worker:在终端中,执行以下命令来启动worker:
celery -A tasks worker
  1. 调用任务:在Python中,您可以通过以下方式调用任务:
from tasks import mytask  
mytask.delay()

5. 使用supervisord

Supervisord是一个进程控制系统,帮助您以可靠的方式启动、停止和重启应用程序。可以使用以下过程在supervisord中运行Python脚本:

  1. 安装supervisord:使用pip安装supervisord:
pip install supervisor
  1. 创建supervisord配置文件:在“/etc/supervisor/conf.d/”目录下创建名为“myscript.conf”的文件,其内容为:
[program:myscript]  
command=/usr/bin/python /path/to/script.py  
autostart=true  
autorestart=true  
stderr_logfile=/var/log/myscript.err.log  
stdout_logfile=/var/log/myscript.out.log  
user=username

其中,program是程序名称,command是要执行的命令,autostart和autorestart指定程序启动和重启的设置,stderr_logfile和stdout_logfile指定错误和输出日志的位置。

  1. 保存文件并重新加载supervisord配置:
sudo supervisorctl reread  
sudo supervisorctl update
  1. 启动脚本:
sudo supervisorctl start myscript

以上就是我讲解“Python脚本后台运行的五种方式”的完整攻略,希望对您有所帮助。

点击下方安全链接前往获取

CSDN大礼包:《Python入门&进阶学习资源包》免费分享

👉Python实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

图片

图片

👉Python书籍和视频合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

图片

👉Python副业创收路线👈

图片

这些资料都是非常不错的,朋友们如果有需要《Python学习路线&学习资料》,点击下方安全链接前往获取

CSDN大礼包:《Python入门&进阶学习资源包》免费分享

本文转自网络,如有侵权,请联系删除。

  • 26
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值