您的位置:首页 > 运维架构 > Tomcat

Tomcat里antiResourceLocking的作用和引起的一个问题 .

2014-05-18 09:19 309 查看
今天在论坛看到了一个网友的提问:

奇怪的问题,文件上传到Tomcat下的temp目录里面了


虽然我肯定是配置的问题,不过我还真的没有自己遇到这个。

不过还好,楼主真的在配置文件里找到了问题,那就是 antiResourceLocking

我们先来看看这个 antiResourceLocking 到底是干什么的!

If true, Tomcat will prevent any file locking. This will significantly impact startup time of applications, but allows full webapp hot deploy and undeploy on platforms or configurations where file locking can occur. If not specified,
the default value is
false
.

Please note that setting this to
true
has some side effects, including the disabling of JSP reloading in a running server: see

Bugzilla 37668 .

Please note that setting this flag to true in applications that are outside the appBase for the Host (the
webapps
directory by default) will cause the application to be
deleted
on Tomcat shutdown. You probably don't want to do this, so think twice before setting antiResourceLocking=true on a webapp that's outside the appBase for its Host.

我大致翻译一下:

如果这个参数为true,那么将组织任何文件锁。这将明显的影响应用的启动时间,但允许webapps,可能发生锁的平台和配置下,支持完整的热部署和热卸载。如果不配置,默认值是false;

如果设置为true,有一些副作用,包括屏蔽了JSP文件在运行服务器上的重新加载。

如果设置为true,且部署在Host的AppBase目录外面(默认是webapps),在Tomcat关闭的时候将导致应用被删除。

最主要的就翻译到这里了。实际上,如果为false,因为存在锁,在你重新发布的时候,可能出现部分代码无法更新。因为原始文件可能因为被锁住了,不能删除。

当然,如果为false,那么部署的目录就是和包名相同了。如果是false,则会每次都放到一个临时目录下面,一个temp目录。这也是这个配置引发的一个副作用。

另外的一个类似的配置
antiJARLocking 是防止jar类库被锁定而无法删除这个作用的。


每天努力工作,每天都有收获。早上的经验继续有用,我先复制一份先。呵呵呵!

今天是个好日子,因为明天就是周末了,希望我能回天津,顺便祝大家周末好心情。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: