Linux中的守护进程——supervise

絮叨

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

安装、使用、栗子

安装:

  官网有介绍,不再赘述:

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

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

chmod  /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.编译,试运行

Linux中的守护进程——supervise

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

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

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

  5.验证supervise的功能

Linux中的守护进程——supervise

  无论是在程序中终止,还是直接kill进程,supervise都会立即将程序重启,始终保持run的状态。

上一篇:.NET 开源了,Visual Studio 开始支持 Android 和 iOS 程序编写并自带 Android 模拟器


下一篇:abowman