一、问题描述


在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_解决方案的更多相关文章

  1. 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 ...

  2. connections java.net.BindException: Address already in use_解决方案

    一.问题描述 在Linux服务器(CentOS7系统)中配置并启动JMeter远程监控服务器资源所需的ServerAgent目录下的 startAgent.sh 文件时,系统出现异常提示,如 [roo ...

  3. Jmeter接口压力测试,Java.net.BindException: Address already in use: connect

    Java.net.BindException: Address already in use: connect 问题原因: 操作系统会为TCP/IP服务预留临时端口,Jmeter在跑并发测试的时候每开 ...

  4. Jenkins启动时报错:java.net.BindException: Address already in use: bind 解决方法

    下载jenkins.war包后,进入Jenkins.war包目录下,运行java -jar jenkins.war时报端口被占用的错误:java.net.BindException: Address ...

  5. java.net.BindException: address already in use <null>:xxxx

    linux下,tomcat突然关闭了,执行关闭(shutdown.sh)和启动(startup.sh)成功后,tomcat仍未运行,查看tomcat的catalina日志发现这样一个报错:java.n ...

  6. java.net.BindException: Address already in use: JVM_Bind

    是端口占用,如果修改端口后仍提示这样的错误,可能是eclipse自动关闭或正在运行服务非正常中断导致端口没有关闭,这时你再启动,还是提示java.net.BindException: Address  ...

  7. 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 ...

  8. (解决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端口是 ...

  9. 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 ...

随机推荐

  1. 使用session存储数据

    @WebServlet("/reply") public class ReplyServlet extends HttpServlet { @Override protected ...

  2. 013——MATLAB硬件支持包离线下载

    (一)参考文献:https://blog.csdn.net/hyperorbit/article/details/88095384 (二)去下列网址下载离线包下载工具:https://ww2.math ...

  3. sql server 视图的用法

    Sql server中 如何用sql语句创建视图 1.视图的作用 视图的作用: 第一点:使用视图,可以定制用户数据,聚焦特定的数据. 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例 ...

  4. bzoj 1072: [SCOI2007]排列perm 状压dp

    code: #include <bits/stdc++.h> #define N 1005 using namespace std; void setIO(string s) { stri ...

  5. EasyUI日期时间框DateTimeBox

    WEB DEMO 日期时间框 DateTimeBox <!DOCTYPE html> <html> <HTML> <head> <HEAD> ...

  6. P2502 [HAOI2006]旅行——暴力和并查集的完美结合

    P2502 [HAOI2006]旅行 一定要看清题目数据范围再决定用什么算法,我只看着是一个蓝题就想到了记录最短路径+最小生成树,但是我被绕进去了: 看到只有5000的边,我们完全可以枚举最小边和最大 ...

  7. ShellExecute打开文件,打开文件夹的用法

    转自https://www.cnblogs.com/nxopen2018/p/11070031.html //方法1 //转换 //char msg[256]; //sprintf_s(msg, &q ...

  8. mysql设置主键自增长和自增长初始值

          本文主要向大家介绍MySQL数据库之Mysql创建表实现主键自增并且初始值为200,希望对大家学习MySQL数据库有所帮助.       假设已经创建表test,并且主键为id.Mysql ...

  9. element ui的table的头部自定义

    <el-table-column label="级别" min-width="120" prop="clueLevel" align= ...

  10. MySQL数据库入门——多实例配置

    前面介绍了相关的基础命令操作,所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握 1.什么是多实例 多实例就是一台服务器上开启多个不同的服务端口(默认3306), ...