python服务器运维步骤_python运维服务器

python服务器运维步骤_python运维服务器好久没有写东西了.一直做服务器开发需要写一些脚本来控制服务器的启动.本来Windows自带了任务计划,但不是特别方便,还是用python写了一下.需求:在固定的时间启动服务器先看源代码:defstart_process(date):cwd=os.getcwd();globallist_threads;globaliskill;iskill=False;foriinrange(n…

大家好,又见面了,我是你们的朋友全栈君。

好久没有写东西了.一直做服务器开发需要写一些脚本来控制服务器的启动.本来Windows自带了任务计划,但不是特别方便,还是用python写了一下.

需求:在固定的时间启动服务器

先看源代码:

def start_process(date):

cwd = os.getcwd();

global list_threads;

global iskill;

iskill = False;

for i in range(num_threads):

t=Thread(target=start_service,args=(cwd, date, process_name[i]));

t.setDaemon(True);

t.start();

list_threads.append(t);

time.sleep(0.1)

time.sleep(1);

def start_service(cwd, date, name):

for (k,v) in process_condition.items():

if (k == name):

process_info = cwd+”\\”+k+” “+cwd+”\\”+v;

try:

p = subprocess.Popen(process_info, stdout=subprocess.PIPE);

print “%s starts successful\n” % name;

c = p.stdout.readline();

while 1:

#print c

c=p.stdout.readline();

p.stdout.flush();

time.sleep(0.01)

global iskill;

if (iskill):

print “now kill thread %s\n” % name;

quit();

break;

except Exception, p:

a = 0;

sys.exit();

注意点有几个地方:

服务器需要输出日志,所以不能在一个线程,否则日志在python的缓冲区,太多后会无法写出.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157891.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python 九九乘法表[通俗易懂]

    Python 九九乘法表[通俗易懂]#python九九乘法表#创建外层循环控制高度i=0whilei<9:#先+=,从1开始计算i+=1#创建内层循环控制宽度j=0whilej

    2022年7月5日
    24
  • Codeforces 455B A Lot of Games(字典树+博弈)[通俗易懂]

    Codeforces 455B A Lot of Games(字典树+博弈)

    2022年1月26日
    52
  • fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]

    fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]usingDevExpress.XtraBars.Ribbon;usingFleck;usingIMS.DBHelper;usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Linq;usingSystem.Windows.Forms;usingWHC.Framework.Commons;usingRfi…

    2025年7月16日
    6
  • SSM框架面试题总结[通俗易懂]

    SSM框架面试题总结[通俗易懂]Spring如何实现一个IOC容器配置文件配置包扫描路径递归包扫描获取.class文件反射,确定需要交给IOC管理的类对需要注入的类进行依赖注入配置文件中指定需要扫描的包路径定义一些注解,分别表示访问控制器,业务控制层,数据持久层,依赖注入注解,获取配置文件注解从配置文件中获取需要扫描的包路径,获取到当前路径下的文件信息及文件夹信息,我们将当前路径下所有的以.class结尾的文件添加到一个Set集合中进行存储遍历这个Set集合,获取在类上有指定注解的类,并将其交给IOC容器,定义一个

    2022年6月16日
    32
  • Conda源_conda配置清华源

    Conda源_conda配置清华源conda查看源的信息:condaconfig–show-sources查看源路径:condaconfig–setshow_channel_urls_yesconda添加源:condaconfig–addchannelsXXXXXXXXXXXXXX例如:(condaconfig–addchannelshttps://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/condaconfig–addcha

    2022年10月1日
    4
  • LAMP配置-php.ini

    LAMP配置-php.ini[PHP]zlib.output_compression=Offimplicit_flush=Offunserialize_callback_func=serialize_precision=-1disable_functions=disable_classes=zend.enable_gc=Onexpose_php=Onmax_execution_time=30max_input_time=60memory_limit=128.

    2022年6月6日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号