python linux服务_Python脚本作为Linux服务/守护程序
哈o
我试图让python脚本在(ubuntu)linux上作为服务(守护程序)运行。
在网络上,存在几种解决方案,例如:
行为规范的Unix守护进程很难正确执行,但是每个守护程序所需的步骤几乎相同。DaemonContext实例保存程序的行为和配置的进程环境。使用实例作为上下文管理器进入守护程序状态。
但是,由于我想将我的python脚本专门与ubuntu linux集成,我的解决方案是与init.d脚本结合使用
#!/bin/bash
WORK_DIR="/var/lib/foo"
DAEMON="/usr/bin/python"
ARGS="/opt/foo/linux_service.py"
PIDFILE="/var/run/foo.pid"
USER="foo"
case "$1" in
start)
echo "Starting server"
mkdir -p "$WORK_DIR"
/sbin/start-stop-daemon --start --pidfile $PIDFILE \
--user $USER --group $USER \
-b --make-pidfile \
--chuid $USER \
--exec $DAEMON $ARGS
;;
stop)
echo "Stopping server"
/sbin/start-stop-daemon --stop --pidfile $PIDFILE --verbose
;;
*)
echo "Usage: /etc/init.d/$USER {start|stop}"
exit 1
;;
esac
exit 0
并在python中:
import signal
import time
import multiprocessing
stop_event = multiprocessing.Event()
def stop(signum, frame):
stop_event.set()
signal.signal(signal.SIGTERM, stop)
if __name__ == '__main__':
while not stop_event.is_set():
time.sleep(3)
我现在的问题是这种方法是否正确。我是否需要处理其他信号?它将是“行为良好的Unix守护进程”吗?
python linux服务_Python脚本作为Linux服务/守护程序相关推荐
- python脚本在linux上运行的两种方式_python脚本当作Linux中的服务启动实现方法
脚本服务化目的: python 在 文本处理中有着广泛的应用,为了满足文本数据的获取,会每天运行一些爬虫抓取数据.但是网上买的服务器会不定时进行维护,服务器会被重启.这样我们的爬虫服务就无法运行.这个 ...
- Linux之shell脚本实现java服务的一键启动、停止、重启及每个服务单独的重启
shell脚本提供了一键启动.停止.重启及每个服务单独的重启的函数. 脚本实现了: 调用sh文件根据不同的入参调用不同的函数 创建文件夹 创建文件 自定义函数调用自定义函数(调用函数时传入参数) 调用 ...
- python在linux编程_python要在linux下编程吗
不少Python新手经常问到学Python到底需不需要学习Linux? Python不是支持Windows和Linux操作系统吗?能在Windows下开发为什么还要学习Linux? 问这样的问题的朋友 ...
- linux下shell脚本论文,Linux下Shell脚本编程
1. shell脚本是什么 它是一种脚本语言,并非编程语言. 可以使用一些逻辑判断.循环等语法. 可以自定义子函数,是系统命令的集合. shell脚本可以实现自动化运维,大大增加我们的工作效率. 2. ...
- python脚本打包成linux命令_Python脚本文件打包成可执行文件的方法
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- linux重启sh脚本,Linux 之shell脚本系列之服务启动/关闭/重启/状态
一 问题 自己开发的程序,如何用shell 脚本实现 启动,关闭,重启,查看状态? 二 方案 myshell.sh #!/bin/sh SERVICE="fm_tuoguan_shell&q ...
- linux打开python文件夹_python 常用对linux系统文件及目录的操作
目录 1.取得当前目录--os.getcwd() >>> import os >>> s=os.getcwd()#获得当前运行脚本所在目录 >>> ...
- python http代理_python HTTP代理中转服务
不知道该取一个什么名字,所以叫HTTP代理中转服务,其实就是将客户端HTTP请求转发给代理IP,再把代理IP的响应返回给客户端,这个有什么用处呢? 很简单,像python的爬虫为了防爬会使用代理IP, ...
- python自动定期清理日志脚本支持Linux+windows
1 直接上代码 # -*-coding:utf-8-*- #Linux定时执行方式: # 需要单独执行下面定时命令(每天凌晨一点执行) # 添加任务之前请检查 systemctl status cro ...
最新文章
- 洛谷 P1636 Einstein学画画
- MyBatis 通用Mapper 入门教程
- Vue2.x-05 iview的Select控件点击从后台加载数据
- Java第三大的数,Java通过排序找出数组第三大数字
- Docker框架的使用系列教程(四)容器的使用
- 当前完整路径_详解关键路径法,这可能是你找得到最详细的了
- PHP5.6的安装与配置(win7)
- (转)2-sat 专题
- oracle自定义函数获取省份,Oracle 自定义函数Function
- 手机通讯录备份代码实现二
- 使用Jenkins自动部署博客
- 三款JSON类库Jackson,Gson与JSON-lib的性能对比
- 理解委托是类型安全的
- python代码示例-Python numpy.cov()用法及代码示例
- BZOJ.5093.[Lydsy1711月赛]图的价值(NTT 斯特林数)
- 微信之微信支付(封装)--jsapi
- Spring 中常用注解原理剖析
- 边沿触发器(T触发器)
- 安全生产:端正工作态度
- Java中区分中英文
热门文章
- [图像处理] Python+OpenCV实现车牌区域识别及Sobel算子
- Python之深入解析Vulture如何一键找出项目中所有无效的代码
- LeetCode Algorithm 102. 二叉树的层序遍历
- 【机器视觉】 dev_error_var算子
- 【机器视觉】 default算子
- 【Qt】2D绘图之绘制图片
- 【Linux】一步一步学Linux——systemctl命令(147)
- 【C语言项目】贪吃蛇游戏(上)
- 怪物刷新时间计时_热血传奇;散人对这类怪物可谓是情有独钟
- mysql查询过程从客户端发送查询请求_MySQL查询过程和高级查询