最近在写运维管理平台的定时检测集群中各台服务器端口开放状态来判断进程状态的定时任务。顺便整理了下java如何检测服务器一个或者多个端口,以及如何加到定时任务中。

一、java中用Socket检测服务器一个端口开放状态。(对socket不太了解,只是最近用才简单看了下)

Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,取后一种意思。通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,像一个多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供220伏交流电, 有的提供110伏交流电,有的则提供有线电视节目。 客户软件将插头插到不同编号的插座,就可以得到不同的服务。

Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。(百度百科)

个人实现思路是:将传递进来的ip先放到list的第一个位置,为了方便返回时ip和port对应。也可                     以用更好的方法,即用set来传递返回值,ip在调用check方法的对象中标记。

java.net 中 SocketAddress 的子类InetSocketAddress此类实现 IP 套接字地址(IP 地址 + 端口号)

/**

*

* @param ip

* @param port

* @return

*/

public List check(String ip,String port){

List results=new ArrayList();

results.add(0,ip);

try {

int intport=Integer.parseInt(port);

Socket socket=new Socket();

SocketAddress add = new InetSocketAddress(ip,intport);

socket.connect(add,50);

socket.close();

results.add(port);

return results;

} catch (Exception e) {

// TODO Auto-generated catch block

return null;

}

}

java定时器检测状态_java 定时检测服务器端口状态方法(一)相关推荐

  1. linux查看服务器端口状态,打开端口

    查看服务器端口状态: Cd /etc /etc/init.d/iptables status 查看当前所有tcp端口 netstat -ntlp 查看所有80端口使用情况 netstat -ntulp ...

  2. win7怎么修改服务器端口,win7服务器端口设置方法

    win7服务器端口设置方法 内容精选 换一换 当后台重新配置邮箱服务器等信息后,手机端WeLink一定要退出重新登录一次.我们常用的邮箱,比如:QQ邮箱.163邮箱.腾讯企业邮箱.网易企业邮箱.263 ...

  3. iis网站服务器端口设置,iis服务器端口设置方法

    iis服务器端口设置方法 内容精选 换一换 获取当前系统健康状态.设置成"GET".该接口仅支持POST和GET方法,不支持PUT和DELTE等方法.https://ip:port ...

  4. java 线程状态_Java线程为何没有Running状态?我猜你不知道。

    作者:国栋原文:https://my.oschina.net/goldenshaw/blog/705397 Java虚拟机层面所暴露给我们的状态,与操作系统底层的线程状态是两个不同层面的事.具体而言, ...

  5. java 线程状态_JAVA线程漫谈:线程状态与状态转换解析

    线程使用方式 JDK线程的顶层抽象是Runnable接口,本质上,线程相关的类都是基于Runnable和Thread实现类实现. JDK API级别有不同的创建线程的方式,但本质是还是基于Runnab ...

  6. java 定时器10秒_Java定时器的使用(Timer)

    java定时器的使用(Timer) 1.在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等.对于这样的操作最方便.高效的实现方式就是使用java.util.Timer工具类. priv ...

  7. java 文件写入 读取_JAVA文件的两种读取方法和三种写入方法

    在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...

  8. java 字符串为空_java判断字符串为空,方法详解

    之前给大家介绍过关于java输出字符串的方法,那么下面要给大家带来的就是java判断字符串为空的方法,一起来通过下面的文章内容进行一下详细的了解吧. java判断字符串最常见的四种方法: 方法1if  ...

  9. java socket 循环读取_java socket tcp(服务器循环检测)

    刚才看了下以前写了的代码,tcp通信,发现太简单了,直接又摘抄了一个,运行 博客:http://blog.csdn.net/zhy_cheng/article/details/7819659 优点是服 ...

最新文章

  1. 【C语言】实现strcat
  2. 通过 Jersey Http请求头,Http响应头,客户端 API 调用 REST 风格的 Web 服务
  3. 列了一些自己会但是不怎么精通的编程语言和知识,做个记录,空余时间加强学习...
  4. 蓝桥练习-算法训练 最大最小公倍数
  5. 知识管理≈内容管理≈文档管理≈项目文档管理
  6. Nodejs下的ES6兼容性与性能分析
  7. matlabapp窗口图像_如何在一个matlab窗口上合并两个图像?
  8. 自动加载简单实现 __autoload()
  9. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-5.HttpClient4.x工具获取使用...
  10. linux下分卷压缩,合并解压的3种方法
  11. 台式网卡计算机,台式机万能网卡驱动,教您如何给台式机安装万能网卡驱动
  12. 服务器文件传输抓包,Post入门篇 第12课multipart/form-data多部件上传抓包分析过程...
  13. gma 教程 | 气候气象 | 计算标准化降水蒸散指数(SPEI)
  14. 2017第25届春季中西部(重庆)医疗器械展览会会刊(参展商名录)
  15. [割点问题]HOJ 12307 Disconnected Pair
  16. 关于 类的常成员函数 声明和定义处 都需要加 const的原因
  17. EASYOPS系列|谨慎!勿让持续交付变成bug自动化发布
  18. 一生中最值得珍藏的电影台词
  19. Andrew Ng Deep Learning 第三周 选择题
  20. 杭电4510—小Q系列故事—为什么时光不能倒流

热门文章

  1. 让UpdatePanel支持上传文件:解决当页面显式设置document.domain时提示的500错误
  2. shell下移动文件
  3. C语言课后习题(30)
  4. Java-Exception异常
  5. 基础知识—数据类型-常量及符号
  6. unity 自动将文件上传_unity如何存储文件夹
  7. openGauss 上海 Meetup:把企业级数据库能力带给用户
  8. 连载四:Oracle升级文章大全(完结篇)
  9. 12.2 新特性:锁信息获取之在线删除索引
  10. 如何使用mock应对测试所需随机数据