tomcat antiResourceLocking antiJARLocking 的作用和用法
2024-09-01 13:46:07
供稿:網友
我們先來看看這個 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類庫被鎖定而無法刪除這個作用的。