From b30725a3e24ff3466b9060fdf3416dc20b82fe59 Mon Sep 17 00:00:00 2001 From: Mzaxd Date: Thu, 9 Mar 2023 21:23:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=85=B3=E9=97=ADWebSSH?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=97=B6session=E4=B8=8D=E5=9B=9E=E6=94=B6?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=9A=84=E5=86=85=E5=AD=98=E6=B3=84=E9=9C=B2?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mzaxd/noodles/job/CheckInstancesStatus.java | 2 +- .../java/com/mzaxd/noodles/websocket/SshHandler.java | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/mzaxd/noodles/job/CheckInstancesStatus.java b/src/main/java/com/mzaxd/noodles/job/CheckInstancesStatus.java index 26ee674..6d313b4 100644 --- a/src/main/java/com/mzaxd/noodles/job/CheckInstancesStatus.java +++ b/src/main/java/com/mzaxd/noodles/job/CheckInstancesStatus.java @@ -138,7 +138,7 @@ public class CheckInstancesStatus{ hostMachine.setHostMachineState(SystemConstant.HOST_MACHINE_STATE_ONLINE); hostMachines.add(hostMachine); } - } catch (HttpException exception) { + } catch (Exception exception) { HostMachine hostMachine = hostMachineService.getById(detector.getHostMachineId()); if (Objects.nonNull(hostMachine)) { hostMachine.setHostMachineState(SystemConstant.HOST_MACHINE_STATE_OFFLINE); diff --git a/src/main/java/com/mzaxd/noodles/websocket/SshHandler.java b/src/main/java/com/mzaxd/noodles/websocket/SshHandler.java index c9f4b45..c7bdb58 100644 --- a/src/main/java/com/mzaxd/noodles/websocket/SshHandler.java +++ b/src/main/java/com/mzaxd/noodles/websocket/SshHandler.java @@ -69,12 +69,12 @@ public class SshHandler { } - private static final AtomicInteger OnlineCount = new AtomicInteger(0); + private static final AtomicInteger ONLINE_COUNT = new AtomicInteger(0); /** * concurrent包的线程安全Set,用来存放每个客户端对应的Session对象。 */ - private static CopyOnWriteArraySet sessionSet = new CopyOnWriteArraySet(); + private static final CopyOnWriteArraySet sessionSet = new CopyOnWriteArraySet(); /** @@ -90,7 +90,7 @@ public class SshHandler { sshItem.setUser(sshLink.getName()); sshItem.setPassword(sshLink.getPassword()); // 在线数加1 - int cnt = OnlineCount.incrementAndGet(); + int cnt = ONLINE_COUNT.incrementAndGet(); log.info("有连接加入,当前连接数为:{},sessionId={}", cnt, session.getId()); HandlerItem handlerItem = null; try { @@ -115,8 +115,9 @@ public class SshHandler { */ @OnClose public void onClose(javax.websocket.Session session) { + destroy(session); sessionSet.remove(session); - int cnt = OnlineCount.decrementAndGet(); + int cnt = ONLINE_COUNT.decrementAndGet(); log.info("有连接关闭,当前连接数为:{}", cnt); } @@ -281,7 +282,7 @@ public class SshHandler { System.out.println("#####:" + msg); session.getBasicRemote().sendText(msg); } catch (IOException e) { - + e.printStackTrace(); } } }