关于【Caused by: java.net.BindException: Address already in use: JVM_Bind】,你了解多少?
(1)、首先检查预期的监听端口号是否被占用?
(2)、还需要检查任意端口是否被占用?
因为,通过createServerSocket创建一个tcp监听时,除了指定目标端口号外,还需要listen一个任意端口号,
但这个任意端口,你是无法知道的,不像你的目标端口号。此时就需要修改目标端口号,尽管不是因为
目标端口号被占用,这个动作可以导致任意端口号的监听被改变,从而避免此问题的出现。
比较如下:
【解释如下】
JMX代理是导致随机端口号发生的根本原因,
当JVM中设置参数为【-Dcom.sun.management.jmxremote】时,会在一个随机端口上开启监听,供本地访问jmx使用,==>本地管理和监控
当JVM中设置参数为【-Dcom.sun.management.jmxremote.port=portNum】时,会开启两个监听端口号,一个为随机的,另一个为指定的<porNum>,指定的端口是为了进行远程jmx访问的。==>远程管理和监控
配置样例如下:
【-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.hostname=10.40.120.165】
如果不想看到这些随机端口号,你可以将jmx代理关掉,即不在JVM参数中添加【-Dcom.sun.management.jmxremote】相关属性。
但是即使不加该属性为true,通过jconsole还是可以本地访问jmx的,即任意端口号不完全针对本机jmx监控而开启监听的,仅和远程代理相比较而言。不能理解成,没有任意端口监听开启,本地jmx监控就访问不到。
【相关参考】
http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html
分享到:
相关推荐
Caused by: java.net.UnknownHostException: openapi.alipay.com
Caused by: java.lang.OutOfMemoryError: PermGen space解决方案, avax.servlet.ServletException: java.lang.OutOfMemoryError: PermGen space at org.apache.jasper.servlet.JspServlet.service(JspServlet.java...
最近纠结致死的一个java报错java.net.SocketException: Connection reset 终于得到解决
在应用程序中调用不同服务时,经常会遇到No route to host程序异常的问题。下文分享该问题的排查过程与解决方法。
08-13 18:29:22.924: E/AndroidRuntime(1875): Caused by: Java.lang.ClassNotFoundException:XXXXX in loader dalvik.system.PathClassLoader[/data/app/XXXX.apk] 我想大家经常因为疏忽出现...
完美
Caused by: android.system.ErrnoException: write failed: ENOSPC (No space lef
at java.net.URLClassLoader.findClass(URLClassLoader.java:434) at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:204) at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:688...
主要介绍了java.net.ConnectException: Connection refused问题解决办法的相关资料,需要的朋友可以参考下
主要介绍了Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
异常:Caused by: java.lang.IllegalStateException: Method has too many Body parameters Caused by: java.lang.IllegalStateException: Method has too many Body parameters: public abstract ...
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure的一个解决方案-附件资源
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter 错误,产生原因是缺少javax.xml.bind.DatatypeConverter
整个系统都没有错误,但是在发布运行后,控制台上却抛出了这样的异常: java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource
解决webMagic0.7.3 出现javax.net.ssl.SSLException: Received fatal alert: protocol_version的问题-附件资源
NULL 博文链接:https://redarmychen.iteye.com/blog/463864
java.lang.NoSuchFieldError: Companion 问题的解决方案
Caused by: java.net.ConnectException: Connection timed out: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) at java...
1、写在开头 标题之前我想说一下Linux的mysql真的实在是太坑了。太坑了。总是会出现这样那样的你想不...4、今天要说的就是 没有打开only_full_group_by Cause:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExcepti