0
点赞
收藏
分享

微信扫一扫

简单检测java服务是否存活,如果没有存活,启动服务的工具

倚然君 2022-04-18 阅读 39
java
package com.example.util;

import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;

/**
 * @author :Fan
 * @date :Created in 2022/4/18 14:18
 * @description:
 * @modified By:
 */
public class PingServer {

    /**
     * 要监听的端口号
     */
//    public static int port = 8848;
    /**
     * 要监听的主机地址
     *
     */
    public static String ip = "127.0.0.1";

    private static String SrartServerCommand = "java -jar D:\\IdeaWork\\dsv-portal-2021\\code\\end\\branch\\dsv-portal\\herdsric-register\\target\\herdsric-register.jar";

    public static boolean pingServerIsIsExit(int port){
        Boolean flag = false;
        try {
            //1.一分钟发送一次请求
            //创建连接对象
            Socket socket = new Socket();
            //连接,如果连接失败,会抛异常。
            socket.connect(new InetSocketAddress(ip, port));
            System.out.println(port + "端口正常");
            //为true说明已经正常发送,将邮件状态设置为1
            flag = true;
//            if (flag) {
//                //将发送状态改为未发送
//                isSend = 1;
//            }
            return flag;
        } catch (Exception e) {
            e.printStackTrace();
            try {
                Process process = Runtime.getRuntime().exec(SrartServerCommand);
                try {
                    Thread.sleep(60000);
                } catch (InterruptedException ex) {
                    ex.printStackTrace();
                }
                System.out.println("程序启动成功");
                flag = true;
            } catch (IOException ex) {
                ex.printStackTrace();
            }
            return flag;
        }
    }


    public static void main(String[] args) {
        pingServerIsIsExit(8848);
    }
}

举报

相关推荐

0 条评论