Vaadin网络应用停止响应,直到我清除浏览器数据或使用Chrome隐身模式

时间:2015-03-21 01:56:44

标签: tomcat caching web-applications push vaadin

我有一个Vaadin Web应用程序(带有Websocket Push的Servlet 3.0版),我将其编译成war文件并部署在Tomcat 8上(在Linux 64位RHEL 6 Web服务器上)。然后,我在家庭网络上使用谷歌浏览器尝试连接到它。

描述

  • 经过全新部署后,使用谷歌浏览器连接到该应用程序,该应用程序在使用前15-20分钟内工作正常(且响应速度极快)。

  • 之后,它停止响应。重新加载栏卡住,尝试重新连接到页面不起作用(新选项卡,新浏览器实例)。 Chrome卡在“等待(主持人)......”上。

  • 当我清除浏览数据(全部)时,我可以像平常一样连接到网络应用程序。此外,如果我使用Chrome隐身模式(没有浏览历史记录),则该网络应用可以正常使用。 Firefox

  • 也是如此

在Tomcat中尝试解决方案

我尝试将以下参数添加到Tomcat Context.xml:

<Context cachingAllowed="false" cacheMaxSize ="0" cacheTTL="1">

在Vaadin尝试解决方案

  • 我尝试使用Vaadin的
  • 我尝试了3种不同的Push(Websocket,长轮询,流媒体)实现
  • 我尝试停用Push

我尝试的解决方案都没有奏效。有人有什么想法吗?我是否错误管理了Vaadin存储的用户状态?

修改

忘记提及,Tomcat日志中没有异常或不良行为的痕迹。实际上,在Web应用程序停止响应后,没有输出。

其他编辑

我忘了提到网络服务器是负载均衡器(Google Compute Engine)的后面。一位朋友刚刚建议可能是负载均衡器和过期的cookie存在问题。

1 个答案:

答案 0 :(得分:0)

我收到了Vaadin论坛的建议:

https://vaadin.com/forum#!/thread/9551763/9568195