0

我在 EC2 Fedora8 64 位 2.6.21.7-2.ec2.v1.2.fc8xen 上遇到 Tomcat 6.0.29 的问题。正在运行带有符号链接的静态数据文件夹的 java webapp。像这样的东西:

/home/user/tomcat/webapps/my-app/staticdata
/home/user/staticdata

当我从/home/user/staticdata. Tomcat 只是看不到这些更改,并继续返回旧文件。虽然当我试图从不同的浏览器获取这些文件时,tomcat 会返回最新的文件。我cachingAllowed="false"在 context.xml 中尝试过,但它不起作用。

所以,我想重新部署热数据,而不需要停止 tomcat。

提前致谢。

4

1 回答 1

0

您应该阅读这篇文章,其中另一个人试图按照您的建议进行操作。部署通常应被视为静态的。如果他们需要改变你重新部署。如果正常运行时间是最重要的,您应该考虑启用会话亲和性的负载均衡器。这将允许您在保留飞行会话的同时执行软翻转。

要执行您的建议,您需要一个线程来监视文件系统的更改并定期重新加载静态数据。问题是产生自己的线程是一个主要的容器禁忌。其次,我可以很容易地看到这会导致您吸收所有 perm gen 或类似性质的东西,并最终在不合时宜的时刻使您的 JVM 崩溃。

于 2012-05-31T14:06:51.567 回答