如果主服务器关闭,如何连接到新服务器

时间:2020-05-17 21:24:00

标签: java android

我制作了一个控制器应用程序,它将一个字符串发送到服务器,服务器将按下相应的按钮。但是我想做一个备份服务器,所以如果主电源关闭,客户端将自动连接到另一台服务器。 这是来自客户端的和平代码:

try{
    s= new Socket("ip",7800);
    pw= new PrintWriter(s.getOutputStream());
    pw.write(message);
    pw.flush();
    pw.close();
    s.close();
}catch (IOException e){
    e.printStackTrace();
}
//sending the string
MessageSender messageSender = new MessageSender();
messageSender.execute("S");

备份服务器是相同的,但是在另一个端口中,如果与主要端口的连接丢失,我该如何连接呢?谢谢您的回答。

1 个答案:

答案 0 :(得分:0)

通常会抛出ConnectionException,远程拒绝连接(例如,没有进程正在侦听远程地址/端口)

当此事件发生并在备份服务器上回退时,您可以捕获ConnectionException或它的基类SocketException甚至它的基IOException。

 try{

            s= new Socket("ip",7800);
            pw= new PrintWriter(s.getOutputStream());
            pw.write(message);
            pw.flush();
            pw.close();
            s.close();

        }catch (IOException e){
            e.printStackTrace();
            //fall back code
            s= new Socket("ip",7800);
            ....



        }

注意:您可以重构以上代码,也可以在try块中重新使用代码