`
qepwqnp
  • 浏览: 106372 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

python写的进程守护者

阅读更多

用Python写的一个守护者,核心的代码不到10行。这个方法是由同事想到的,我把核心的代码提出来,真是太cool了:

import os, subprocess

def Run():
    while True:
        taskList = os.popen('tasklist').read()
        for path, exe in [os.path.split(line.strip()) for line in open('config') if line.strip()]:
            if exe not in taskList:
                subprocess.Popen(u'start /d"%s" %s' % (path, exe), shell = True)
        
        time.sleep(60)

Run()

config文件是守护的进程路径,如:

F:\Server\DBServer.exe
F:\Server\ChatServer.exe
F:\Server\\LogicServer.exe
F:\Server\LoginServer.exe
分享到:
评论

相关推荐

    Python 创建子进程模块subprocess详解

    最近,我们老大要我写一个守护者程序,对服务器进程进行守护。如果服务器不幸挂掉了,守护者能即时的重启应用程序。上网Google了一下,发现Python有很几个模块都可以创建进程。最终我选择使用subprocess模块,因为在...

    python期货量化书推荐-Python期货量化交易基础教程(12).pdf

    python期货量化书推荐_Python期货量化交易基础教程(12) 12、多线程threading模块: 多线程也是实现异步任务的⽅式之⼀,通常线程是进程中的⼦任务,多个线程可以在同⼀进程中实现并发执⾏,共享进程的资源,多线程...

    python基础9_1-进程、线程、守护线程、全局解释器锁、生产者消费者模型

    目录1、Python GIL(Global Interpreter Lock)2、进程(process)多进程multiprocessing进程间通讯-Queues/Pipes/Managers进程锁进程池3、线程(thread)语法join函数daemon(守护线程)线程锁之Lock(互斥锁mutex)/RLock...

    Kafka生产者守护进程Bruce.zip

    Bruce 是 Apache Kafka 的生产者守护进程,它简化了客户端发送消息到 Kafka ,无需关注后端的 Kafka 集群。Bruce 主要处理: Routing messages to the proper brokers, and spreading the load evenly across ...

    Python3进阶—多进程【全】

    文章目录一、多进程模块multiprocessing1.1 multiprocessing.Process()1.2 join进程阻塞1.3 daemon守护进程二、进程间同步2.1 互斥锁Lock()2.2 递归锁RLock()三、进程间通信3.1 队列(推荐使用)3.2 队列的应用-生产...

    python cookbook(第3版)

    12.14 在Unix系统上面启动守护进程 第十三章:脚本编程与系统管理 13.1 通过重定向/管道/文件接受输入 13.2 终止程序并给出错误信息 13.3 解析命令行选项 13.4 运行时弹出密码输入提示 13.5 获取终端的大小 ...

    Python Cookbook

    9.13 在UNIX中fork一个守护进程 367 第10章 系统管理 370 引言 370 10.1 生成随机密码 371 10.2 生成易记的伪随机密码 372 10.3 以POP服务器的方式验证用户 375 10.4 统计Apache中每个IP的点击率 376 10.5 ...

    my-python-practices:我的python做法

    my-python-practicessimplemultithreadsCrawler.py:一个简单的多线程生产者消费者爬虫,实际使用的时候可以重写parser的parse_links方法,来写自己的解析规则,然后将解析后将继续要爬的地址放入url队列,生产者会...

    gkeeptrack:GKeepTrack 是一个用于 GNOME 的时间跟踪软件,以及一个可以跟踪您打开的窗口的守护进程

    我计划有一个软件即服务,用 Python 和 Django 编写,它将从 GKeepTrack 的守护程序获取原始数据并生成图表和有趣的信息。 还应该有一个用于配置的 GUI,主要是为了帮助用户将特定应用程序列入白名单或黑名单。

    rejected:被拒绝的是RabbitMQ的消费者框架

    它通过处理与RabbitMQ进行通信和管理使用者进程的所有核心功能,可以快速开发消息处理使用者。 被拒绝的运行作为具有多个使用者配置的主流程运行,每个消费者配置都将其作为隔离的流程运行。 它具有从消费者流程中...

    漫谈大数据第四期-storm

    每个工作节 点都运行了一个名为“Supervisor”的守护进程,用于监听工作,开始并终止工作进程。Nimbus和Supervisor都能快速失败,而且是无 状态的,这样一来它们就变得十分健壮,两者的协调工作是由ApacheZooKeeper...

    waybar-notifications:与Waybar一起使用的小型org.freedesktop.Notifications脚本

    航路通知 免责声明 ... 特此免费授予获得此软件和相关文档文件(“软件”... 守护进程 dbus-python PyGObject此脚本是org.freedesktop.Notifications实现,用作使用DBus的Waybar的简单通知系统。 它允许用户收听org.freed

    redset:Redis支持的排序集可用于协调分布式工作

    多消费者的抓取体系结构提供动力,该体系结构不会重复执行两次相同的工作维护一组简单的,跨进程的“可见”项目,每个项目都有一个TTL 安排对社会服务的分析进行非重复的定期轮询特征无需运行任何守护程序,...

    killswitch:一个多平台应用程序,用于远程关闭或挂起一台或多台计算机(通过手机)

    当然,这取决于您掩盖守护进程的能力(以及假设的入侵者的专业知识)。 项目网站: : 入门该系统包含一个非常简单的REST API,可让您管理用户及其关联的killswitch切换。 此存储库中的应用程序已经实现了以下API...

    MC-LOG-MQTT:通过Minecraft服务器日志提供的MQTT发送者

    MC-LOG-MQTT 该组件读取Minecraft服务器日志并发送MQTT消息。 它是Minecraft IoT项目的一部分,Minecraft IoT项目是Minecraft服务器与通过MQTT标准的任何事物... 参见作为守护进程启动解析器。 可以使用CTRL-C停止它。

    RED HAT LINUX 6大全

    13.2 启动和停止NFS守护程序 236 13.3 NFS状态 236 13.4 配置NFS服务器和客户 236 13.4.1 建立/etc/exports文件 237 13.4.2 使用mount加载一个导出的文 件系统 238 13.4.3 卸载文件系统 238 13.4.4 配置/etc/fstab...

    nohang:适用于Linux的复杂的低内存处理程序

    nohang软件包为Linux提供了一个高度可配置的守护程序,该守护程序能够正确地防止(OOM)并在内存不足的情况下保持系统响应速度。 该软件包还包括其他诊断工具( oom-sort , psi2log , psi-top )。 问题是什么?...

Global site tag (gtag.js) - Google Analytics