jboss 指向环境变量的缓存位置
jboss cache location pointing to env var
我的配置 xml 文件中有以下代码:
<jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:jboss:jbosscache-core:config:3.2">
<locking isolationLevel="READ_COMMITTED" nodeLockingScheme="mvcc"
useLockStriping="false" concurrencyLevel="1500"
lockParentForChildInsertRemove="false" lockAcquisitionTimeout="10000"
writeSkewCheck="true" />
<!-- 0 = no eviction -->
<eviction wakeUpInterval="500" />
<loaders passivation="false" shared="false">
<preload>
<node fqn="/" />
</preload>
<loader class="org.jboss.cache.loader.FileCacheLoader" async="false"
fetchPersistentState="true">
<properties>
location=/${env.VG_HOME}/cacheloader
</properties>
</loader>
</loaders>
</jbosscache>
其中 VG_HOME 是指向本地文件夹的环境变量。
我已经使用 Jetty 服务器在 Linux 和 Windows 上测试了这个设置,它按预期工作。
在 tomcat 7 下,我用 set "VG_HOME=C:\config" 创建了 setenv.sh/bat。但是,当启动应用程序时,会在根目录下创建 cacheloader 文件夹(均为 windows/linux),名称如下 ${env.VG_HOME}。我怀疑 xml 中的位置 属性 没有看到 setenv.sh/bat 文件中设置的环境。
关于修复的任何想法,这意味着应用程序在使用 Tomcat 时会在正确的位置创建文件夹。
谢谢!
在深入了解@Maraboc 的回答后,我找到了修复它的正确位置。
转到您的 setenv 文件并添加以下内容:
set CATALINA_OPTS="-Denv.VG_HOME=%VG_HOME%"
如果您使用的是 TC6,它将不起作用,您需要将其添加到备注下方的 catalina.bat 文件中。
我的配置 xml 文件中有以下代码:
<jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:jboss:jbosscache-core:config:3.2">
<locking isolationLevel="READ_COMMITTED" nodeLockingScheme="mvcc"
useLockStriping="false" concurrencyLevel="1500"
lockParentForChildInsertRemove="false" lockAcquisitionTimeout="10000"
writeSkewCheck="true" />
<!-- 0 = no eviction -->
<eviction wakeUpInterval="500" />
<loaders passivation="false" shared="false">
<preload>
<node fqn="/" />
</preload>
<loader class="org.jboss.cache.loader.FileCacheLoader" async="false"
fetchPersistentState="true">
<properties>
location=/${env.VG_HOME}/cacheloader
</properties>
</loader>
</loaders>
</jbosscache>
其中 VG_HOME 是指向本地文件夹的环境变量。
我已经使用 Jetty 服务器在 Linux 和 Windows 上测试了这个设置,它按预期工作。
在 tomcat 7 下,我用 set "VG_HOME=C:\config" 创建了 setenv.sh/bat。但是,当启动应用程序时,会在根目录下创建 cacheloader 文件夹(均为 windows/linux),名称如下 ${env.VG_HOME}。我怀疑 xml 中的位置 属性 没有看到 setenv.sh/bat 文件中设置的环境。
关于修复的任何想法,这意味着应用程序在使用 Tomcat 时会在正确的位置创建文件夹。
谢谢!
在深入了解@Maraboc 的回答后,我找到了修复它的正确位置。 转到您的 setenv 文件并添加以下内容:
set CATALINA_OPTS="-Denv.VG_HOME=%VG_HOME%"
如果您使用的是 TC6,它将不起作用,您需要将其添加到备注下方的 catalina.bat 文件中。