Websphere 8.5 TCP通道超过了打开连接的最大数量



我们正在WAS 8.5.5.2服务器上运行CXF 2.7.11应用程序。应用程序具有类加载父最后一个属性,我们还按照CXF文档中的说明禁用了IBMJaxWS引擎。

应用程序在几天内运行良好,之后我们得到以下异常,TCP通道似乎已满。

从具有ws类的堆栈跟踪中,我怀疑CXF是这个问题的原因,但这可能是另一个问题的结果

该应用程序也是一个Spring MVC应用程序,它公开REST资源。。

[10.11.2014 05:00:20:887 EET] 00000049 TCPChannel    W   TCPC0004W: TCP Channel TCP_2 has exceeded the maximum number of open connections 20000.
[10.11.2014 05:02:16:343 EET] 0000023f SSLHandshakeE E   SSLC0008E: Unable to initialize SSL connection.  Unauthorized access was denied or security settings have expired.  Exception is javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
    at com.ibm.jsse2.b.a(b.java:56)
    at com.ibm.jsse2.nc.a(nc.java:90)
    at com.ibm.jsse2.nc.unwrap(nc.java:292)
    at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:26)
    at com.ibm.ws.ssl.channel.impl.SSLConnectionLink.readyInbound(SSLConnectionLink.java:535)
    at com.ibm.ws.ssl.channel.impl.SSLConnectionLink.ready(SSLConnectionLink.java:295)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)

所以这有点棘手。您可以简单地增加可以从控制台完成的连接数量:

服务器>WebSphere应用程序服务器>SERVER_NAME>web容器>web容器传输链>TCP CHANNEL

我之所以说这很棘手,是因为可能存在更大的潜在问题,例如连接泄漏。然而,要达到使用2万个连接的程度是相当大的,我不知道你在这台服务器上期望有多少负载。如果这只是一个测试环境,那么您需要开始调查可能的连接泄漏。

Unable to initialize SSL connection. Unauthorized access was denied or security settings have expired. Exception is javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?

错误消息的这一部分意味着正在对SSL端口进行纯文本非SSL连接。您可能还想看看是谁在进行这些调用,因为这是一种开销。

使用20000个连接是非常高的。您的客户端代码中可能存在漏洞,导致连接泄漏。如果您在客户端中使用CXF,您可以查看以下内容https://issues.apache.org/jira/browse/CXF-5144.

增加连接数不会解决您的问题,只会延迟。

相关内容

  • 没有找到相关文章

最新更新