| | |
| | | |
| | | /** |
| | | * 统计在线用户数 |
| | | * @return |
| | | */ |
| | | public int countOnlineUsers() { |
| | | Set<String> keys = redisTemplate.keys(RedisCacheKey.signUserKey("*")); |
| | |
| | | return testResStatus(resList); |
| | | } |
| | | |
| | | /** |
| | | * 测试资源状态 |
| | | */ |
| | | private List<ResEntity> testResStatus(List<ResEntity> resList) { |
| | | List<ResEntity> list = new ArrayList<ResEntity>(); |
| | | List<ResEntity> list = new ArrayList<>(); |
| | | for (ResEntity re : resList) { |
| | | Socket socket = new Socket(); |
| | | try { |
| | | if (StringHelper.isEmpty(re.getTest())) { |
| | | if (StringHelper.isEmpty(re.getUrl())) { |
| | | list.add(re); |
| | | continue; |
| | | } |
| | | |
| | | URI uri = new URI(re.getTest()); |
| | | URI uri = new URI(re.getUrl()); |
| | | SocketAddress add = new InetSocketAddress(uri.getHost(), uri.getPort() == -1 ? 80 : uri.getPort()); |
| | | |
| | | // Ping通地址 |
| | | socket.connect(add, 2000); |
| | | } catch (Exception e) { |
| | | log.error(e.getMessage()); |
| | | // log.error(e.getMessage()) |
| | | list.add(re); |
| | | } finally { |
| | | try { |