• 服务器 Python服务停服、起服脚本


      近日,在阿里云服务器上部署了一个Python应用,Web框架为Tornado,服务器系统为Ubuntu 16.04。

      服务的启动也十分的简单:

    python services.py

      我是利用Xshell工具连接云服务器的,在启动服务的时候发现,一旦我关闭了Xshell窗口,服务就会停止,这就意味我必须时刻保持着对服务器的连接,服务才不会被Stop,这并比现实,所以我想写个脚本文件来控制程序的start以及stop。

      具体实现如下 : service-manager.sh(因为我是直接在root权限下进行安装的,其它用户修改一下workdir即可,当然python文件名需要同步修改)

     1 #!/bin/sh
     2 # chkconfig: 123456 90 10
     3 #
     4 workdir=/root/EasySild
     5 
     6 daemon_start(){
     7   cd $workdir
     8   python services.py &
     9   echo "Server started."
    10 }
    11 
    12 daemon_stop(){
    13   pid=`ps -ef | grep 'python services.py' | awk '{ print $2 }'`
    14   echo $pid
    15   kill $pid
    16   sleep 2
    17   echo "Server Killed."
    18 }
    19 
    20 case "$1" in
    21   start)
    22     daemon_start
    23     ;;
    24   stop)
    25     daemon_stop
    26     ;;
    27   restart)
    28     daemon_stop
    29     daemon_start
    30     ;;
    31   *)
    32   echo "Usage: Services {start|stop|restart}"
    33   exit 1
    34 esac
    35 exit 0

      脚本这样就已经准备好了,可以放在跟python文件同级的路径下,也可以放在你想要的位置。

      脚本运行指令:(首先要进入脚本所在路径)

      起服:sh  service-manager.sh start

        

      停服:sh  service-manager.sh stop

        

      重启:sh  service-manager.sh restart

        

    PS:有需要的小伙伴也可以将停服、起服脚本分开。

  • 相关阅读:
    超星电子书下载攻略
    快速生成PDF书签
    2016抢票软件分享
    Win10安装framework3.5
    .NET破解之分享给新注册的朋友
    封装JedisClient.提供API实现对redis的操作
    java操作redis集群配置[可配置密码]和工具类
    redis 集群java.lang.NoSuchMethodError:SpringJAR包版本冲突错误解决方法
    linux端口开放指定端口的两种方法
    redis requires ruby version 2.2.2的解决方案
  • 原文地址:https://www.cnblogs.com/fx-blog/p/8204128.html
Copyright © 2020-2023  润新知