Im-server日志排查

wenzhouh 23天前 127

我在im-app-server中,调用这个方法:IMResult userResult = UserAdmin.getUserByMobile(phone); 出现了以下的错误,想排查是不是当时im-server网络连接超时了,这种情况是偶现的,请问要怎么查看,想弄清楚是不是用户数量多了之后,我们的服务器的处理性能跟不上了。

java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.8.0_141]
    at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[na:1.8.0_141]
    at java.net.SocketInputStream.read(SocketInputStream.java:171) ~[na:1.8.0_141]
    at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[na:1.8.0_141]
    at org.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:137) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl.java:153) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:280) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:138) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:163) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:157) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:273) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125) ~[httpcore-4.4.13.jar!/:4.4.13]
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:272) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) ~[httpclient-4.5.12.jar!/:4.5.12]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108) ~[httpclient-4.5.12.jar!/:4.5.12]
    at cn.wildfirechat.sdk.utilities.AdminHttpUtils.httpJsonPost(AdminHttpUtils.java:153) ~[sdk-1.3.9.jar!/:na]
    at cn.wildfirechat.sdk.UserAdmin.getUserByMobile(UserAdmin.java:26) ~[sdk-1.3.9.jar!/:na]
    at cn.wildfirechat.app.webhook.MetaServiceImpl.handleMessenger(MetaServiceImpl.java:306) [classes!/:0.68]
    at cn.wildfirechat.app.webhook.MetaServiceImpl.asyncHandleMetaWebHook(MetaServiceImpl.java:159) [classes!/:0.68]
    at cn.wildfirechat.app.webhook.MetaServiceImpl.lambda$receiveWebhook$1(MetaServiceImpl.java:117) [classes!/:0.68]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_141]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_141]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_141]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_141]
    at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_141]
最新回复 (6)
  • x86 23天前
    引用 2
    18080 端口开放了吗?
  • wenzhouh 23天前
    引用 3
    有开放的,正常情况是能够访问的,就是偶尔会出现一条这样的报错
  • HeavyRain 22天前
    引用 4
    1,应用服务和IM服务在同一个内网中吗?
    2,应用服务里面的配置的IM服务地址是内网地址吗?
    3,应用服务和IM服务所在服务器打开文件数是多少?
    4,服务资源监控怎么样,包括CPU/内存/带宽等?
    5,应用服务里带的野火的sdk版本是多少?可以更新一下试试?
  • wenzhouh 22天前
    引用 5
    1. 应用和IM服务部署在同一个内网,延迟<1ms

    2. 应用服务里面的配置im.properties是内网地址

    3. 宿主机 ulimit -n = 65535 应用服务器 ulimit -n = 1048576,IM服务器 ulimit -n = 1048576

    4. 应用服务器跟IM服务器部署在同一台机器上,4核16G,公网带宽:100 Mbps

    5. 当前野火Java SDK版本为 1.3.9

  • HeavyRain 22天前
    引用 6
    野火sdk1.4.3版本解决过资源泄露的问题,请更新到最新再观察一下看看
  • wenzhouh 22天前
    引用 7
    好的。
返回