Can't accept UDP connections java.net.BindException: Address already in use_解决方案
一、问题描述
在Linux服务器(CentOS7系统)中配置并启动JMeter远程监控服务器资源所需的ServerAgent目录下的 startAgent.sh 文件时,系统出现异常提示,如下:
[root@fighter007 ServerAgent-2.2.]# ./startAgent.sh
INFO -- ::47.946 [kg.apc.p] (): Binding UDP to
ERROR -- ::47.966 [kg.apc.p] (): Can't accept UDP connections
java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:)
at sun.nio.ch.DatagramChannelImpl.bind(DatagramChannelImpl.java:)
at sun.nio.ch.DatagramSocketAdaptor.bind(DatagramSocketAdaptor.java:)
at kg.apc.perfmon.PerfMonWorker.listenUDP(PerfMonWorker.java:)
at kg.apc.perfmon.PerfMonWorker.startAcceptingCommands(PerfMonWorker.java:)
at kg.apc.perfmon.AgentTool.processParams(AgentTool.java:)
at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:)
at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:)
at java.lang.reflect.Method.invoke(Method.java:)
at kg.apc.cmd.UniversalRunner.main(UniversalRunner.java:)
INFO -- ::47.967 [kg.apc.p] (): Binding TCP to
ERROR -- ::47.970 [kg.apc.p] (): Can't accept TCP connections

二、问题分析
从以上抛出的异常信息中提取关键的提示信息:
"Can't accept UDP connections
java.net.BindException: Address already in use"
分析:ServerAgent默认开始的是4444端口,提示“不能接收UDP连接,地址已在使用中”,很可能是该端口已被占用,需要修改为新的端口号再启用or先暂停该端口对应的进程,然后再启用ServerAgent服务
三、解决方案
方式1:先暂停4444端口,再启用ServerAgent服务
查询4444端口当前对应的进程:lsof -i:4444
[root@fighter007 ServerAgent-2.2.]# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java root 19u IPv6 UDP *:krb524
java root 20u IPv6 TCP *:krb524 (LISTEN)
关闭指定PID号码的进程(4444端口进程):kill -9 104069
此时,亦可正常启用ServerAgent服务,如下:
[root@fighter007 ServerAgent-2.2.]# ./startAgent.sh
INFO -- ::42.130 [kg.apc.p] (): Binding UDP to
INFO -- ::43.169 [kg.apc.p] (): Binding TCP to
INFO -- ::43.173 [kg.apc.p] (): JP@GC Agent v2.2.0 started
方式2:修改ServerAgent端口,再启用ServerAgent服务
./startAgent.sh –udp-port –tcp-port xxxx ("xxxx" 为新端口号,如:)
./startAgent.sh –udp-port –tcp-port
Can't accept UDP connections java.net.BindException: Address already in use_解决方案的更多相关文章
- JMeter 压测Server Agent无法监控资源问题,PerfMon Metrics Collector报Waiting for sample,Error loading results file - see file log, Can't accept UDP connections java.net.BindException: Address already in use 各种疑难杂症
如何安装插件此博主已经说得很详细了. https://www.cnblogs.com/saryli/p/6596647.html 但是需注意几点: 1.修改默认端口,这样可以避免掉一个问题.Serve ...
- connections java.net.BindException: Address already in use_解决方案
一.问题描述 在Linux服务器(CentOS7系统)中配置并启动JMeter远程监控服务器资源所需的ServerAgent目录下的 startAgent.sh 文件时,系统出现异常提示,如 [roo ...
- Jmeter接口压力测试,Java.net.BindException: Address already in use: connect
Java.net.BindException: Address already in use: connect 问题原因: 操作系统会为TCP/IP服务预留临时端口,Jmeter在跑并发测试的时候每开 ...
- Jenkins启动时报错:java.net.BindException: Address already in use: bind 解决方法
下载jenkins.war包后,进入Jenkins.war包目录下,运行java -jar jenkins.war时报端口被占用的错误:java.net.BindException: Address ...
- java.net.BindException: address already in use <null>:xxxx
linux下,tomcat突然关闭了,执行关闭(shutdown.sh)和启动(startup.sh)成功后,tomcat仍未运行,查看tomcat的catalina日志发现这样一个报错:java.n ...
- java.net.BindException: Address already in use: JVM_Bind
是端口占用,如果修改端口后仍提示这样的错误,可能是eclipse自动关闭或正在运行服务非正常中断导致端口没有关闭,这时你再启动,还是提示java.net.BindException: Address ...
- java.net.BindException: Address already in use: bind
环境:jxse-2.7, netty-3.6.6.Final 现象:每次执行都抛出以下异常 八月 08, 2013 8:45:19 下午 net.jxta.logging.Logging logChe ...
- (解决tomcat端口被占用的问题)create[8005]java.net.BindException: Address already in use: JVM_Bind
create[8005]java.net.BindException: Address already in use: JVM_Bind”,原来是Tomcat8005端口被其他进程占用,8005端口是 ...
- Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind
Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind at ...
随机推荐
- 实现自定义集合的可枚举类型(IEnumerable)和枚举数(IEnumerator )
下面的代码示例演示如何实现自定义集合的 IEnumerable 和 IEnumerator 接口: using System; using System.Collections; using Syst ...
- Hdfs的HA高可用
1.Hdfs的HA高可用:保证Hdfs高可用,其实就是保证namenode的高可用,保证namenode的高可用的机制有两个,editlog共享机制+ZKFC.ZKFC就是ZookeeperFailO ...
- python django -在setting 设定全局时间格式
工作中遇到需要全局设定时间的格式,再此马克下 USE_L10N = False DATE_FORMAT = 'Y-m-d' DATETIME_FORMAT = 'Y年m月'
- C#在WebApi 中使用Redis 的方法
首先Startup public void ConfigureServices(IServiceCollection services) { services.AddControllers(); // ...
- 使用HttpClient进行Get方式通信(使用HttpGet获取网页数据)
1.项目结构 导入jar包 jar包去官网下载解压后项目新建lib目录,将解压包中的lib目录中的zip拷入项目lib目录文件夹,然后build path-->配置到项目中 2.TestGet. ...
- learning java AWT 布局管理器BorderLayout
BorderLayout 将容器分为EAST, SOUTH, WEST,NORTH,CENTER五个区域. public class BorderLayoutTest { public static ...
- windows错误代码摘录
Windows API 错误代码定义在winerror.h里,当我们得到一个Error Code不知其意时,可以查阅这个文件 这里定义了绝大部分的错误,摘录翻译如下 [0]-操作成功完成. [1]-功 ...
- POJ2421Constructing Roads
Constructing Roads Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 23343 Accepted: 10 ...
- Java 获取客户端真实IP地址
本文基于方法 HttpServletRequest.getHeader 和 HttpServletRequest.getRemoteAddr 介绍如何在服务器端获取客户端真实IP地址. 业务背景 服务 ...
- docker安装postgresql
1.在linux执行以下代码: docker run -p : -v /home/docker/postgresql/data:/var/lib/postgresql/data -e POSTGRES ...