服务器 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:有需要的小伙伴也可以将停服、起服脚本分开。

原文地址:https://www.cnblogs.com/fx-blog/p/8204128.html