我正在使用JBoss EAP 6.2作为Web应用程序服务器和Apace Modcluster进行负载平衡。
每当我尝试取消部署我的web应用程序时,都会收到以下警告
14:22:16,318 WARN [org.jboss.modcluster] (ServerService Thread Pool -- 136) MODCLUSTER000025: Failed to drain 2 remaining active sessions from default-host:/starrassist within 10.000000.1 seconds
14:22:16,319 INFO [org.jboss.modcluster] (ServerService Thread Pool -- 136) MODCLUSTER000021: All pending requests drained from default-host:/starrassist in 10.002000.1 seconds
并且需要永久取消部署,部署应用程序的EAP服务器组和节点将无法响应。
唯一的解决方法是重新启动整个EAP服务器。我的问题是,我是否可以在EAP或ModCluster中设置一个属性,以便超出maxTimeOut的活动会话将自行到期?
答案 0 :(得分:0)
要控制超时以停止上下文,您可以使用以下配置值:
停止上下文超时
时间量,以指定单位计量
stopContextTimeoutUnit
,等待干净关闭a 上下文(完成可分发上下文的待处理请求; 或不可分发的活动会话的销毁/到期 上下文)。CLI命令:
/profile=full-ha/subsystem=modcluster/mod-cluster-config=configuration/:write-attribute(name=stop-context-timeout,value=10)
参考:Configure the mod_cluster Subsystem
同样,如果您使用的是JDK 8,请查看此问题:Draining pending requests fails with Oracle JDK8