我正在使用Mobicents http客户端,我使用GET方法得到http请求。然后我使用suspendDelivery()暂停事件并做我的工作。最后我使用resumeDelivery()恢复事件并发送http响应。这是工作只有不到10秒。当我的工作超过10秒时,jboss关闭连接而没有响应。我增加了连接超时。但它没有解决。
<!-- A HTTP/1.1 Connector on port 8080 -->
<Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}"
connectionTimeout="200000" redirectPort="8443" />在jBoss 5.1中是否有其他配置可以增加超时间隔?
发布于 2015-12-07 21:10:30
您可能遇到默认的事件上下文挂起超时。根据suspendDelivery的JAIN Slee1.1FRAPI文档
在同一事件的事件上下文上调用resumeDelivery、或达到系统相关的默认超时时间之前,不会再有SBBs接收事件,以先发生的为准。
(强调我的)
JAIN SLEE 1.1 FR第8.3.1节对事件进行了更详细的说明,详细说明了强制超时是一种故意的保护措施:
在SBB中发生编程错误的情况下,事件传送仅在一段时间内暂停。此时间段可由SBB作为参数提供,如果未提供,则为特定于平台的默认值。SLEE在该时间段过去后自动恢复事件的传送。
系统默认值为10秒,由$MOBICENTS_HOME/jboss-5.1.0.GA/server/default/deploy/mobicents-slee/META-INF/jboss-beans.xml中的defaultEventContextSuspensionTimeout配置属性控制。但我建议明确指定暂停的时间限制,这对使用suspendDelivery(int)调用的特定服务有意义,而不是更改默认值。
https://stackoverflow.com/questions/32344224
复制相似问题