您的位置:首页 > 运维架构 > Linux

Linux中的守护进程——supervise

2016-10-19 15:27 1241 查看

絮叨

  supervise是daemontools的一个工具,可以用来监控管理Unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程序。
  本文介绍一下supervise的安装和使用。

安装、使用、栗子

安装:

  官网有介绍,不再赘述:

  https://cr.yp.to/daemontools/install.html

  其中这个命令的‘1755’引起我的深思。。。,在这里《Linux下chmod命令》给出详细解释。

chmod 1755 /package


使用栗子:

  网上能搜到关于supervise的介绍基本都出自同一篇博客,使用栗子都是跑一个C程序,这里就跑个Java吧:

  1.创建一个文件夹,并创建java类

➜  ~ mkdir testsv
➜  ~ cd testsv
➜  testsv vim Test.java


  2.Test.java,通过Scanner保持main线程,直到在控制台输入信息才结束。

package testsv;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("Hello Java!");
Scanner scanner = new Scanner(System.in);
scanner.next();
}
}


  3.编译,试运行



  可以看到带包名(带有package的情况)时,直接‘java Test’是不能执行的,这个问题,下次再详细说吧。。

  4.在当前文件夹下,新建一个可执行的脚本"run"(chmod命令详情

➜  testsv vim run
#!/bin/sh
echo "start test!"
java -cp .. testsv.Test
➜  testsv chmod +x run


  5.验证supervise的功能



  无论是在程序中终止,还是直接kill进程,supervise都会立即将程序重启,始终保持run的状态。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: