我们正在使用启用了二级缓存的CMS:
的Application.cfc
<cfset THIS.ormsettings.secondarycacheenabled = true />
<cfset THIS.ormsettings.cacheprovider = "ehcache" />
<cfset THIS.ormsettings.cacheConfig="ehcache.xml" />
ehcache.xml中
<ehcache>
<diskStore path="java.io.tmpdir"/>
<defaultCache
maxElementsInMemory="10000"
eternal="true"
overflowToDisk="true"
maxElementsOnDisk="10000000"
diskPersistent="true"
diskExpiryThreadIntervalSeconds="120"
memoryStoreEvictionPolicy="LRU"
/>
</ehcache>
实体设置为cacheuse="transactional"
,因此<cfcomponent persistent="true" entityname="news" table="mews" cacheuse="transactional">
在CMS中保存文章效果很好,它会在保存后立即反映更改。
此CMS管理的其中一个站点应与CMS共享缓存。否则,应用程序仅在站点的ehcache.xml
:
<ehcache>
<diskStore path="java.io.tmpdir"/>
<defaultCache
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="1800"
timeToLiveSeconds="1800"
overflowToDisk="true"
maxElementsOnDisk="10000000"
diskPersistent="true"
diskExpiryThreadIntervalSeconds="120"
memoryStoreEvictionPolicy="LRU"
/>
</ehcache>
是否可以在两个不同的应用程序之间共享缓存?是否可以在两个Application.cfc
中配置它?