我正在将ColdFusion 9与Ehcache一起使用
Ehcache运行得很好,但是自从我重新安装了我的机器Ehcache.Cache.put
拒绝处理特定的元素,而是处理大量的其他元素。
Cache.put
不抛出异常,大约需要4秒才能返回。我尝试放入缓存的元素是ColdFusion组件,大约只有7ko。我不使用序列化。
缓存配置为:
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"
maxBytesLocalHeap="300m">
<sizeOfPolicy maxDepth="99999999" maxDepthExceededBehavior="continue"/>
<defaultCache
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="1200"
overflowToDisk="false"
statistics="true">
我把它改成了
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"
maxEntriesLocalHeap="900">
<defaultCache
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="1200"
overflowToDisk="false"
statistics="true"
maxEntriesLocalHeap="100">
这有效!从maxBytesLocalHeap
更改为maxEntriesLocalHeap
配置会有所不同!我认为可能内部大小计算不起作用。使用maxEntriesLocalHeap
不需要大小计算,这就是它适用于新配置的原因。
那么为什么:
缓存。是否仅在一个特定元素上放置
不使用maxBytesLocalHeap
缓存。put
函数需要4秒吗如果您有任何线索,请告诉我。我真的需要切换回maxBytesLocalHeap
。
PS:
请注意,在 ColdFusion 11 下,如果要存储 Hibernate 对象的实例,则需要添加一些额外的排除项。最终列表是:
coldfusion.runtime.NeoPageContext
coldfusion.runtime.CfJspPage
coldfusion.monitor.memory.MemoryTrackable
coldfusion.monitor.sql.QueryStat
coldfusion.monitor.memory.MemoryTrackerProxy
javax.servlet.ServletContext
org.hibernate.engine.spi.SessionImplementor
org.hibernate.internal.SessionImpl
org.hibernate.internal.SessionFactoryImpl
ColdFusion元素的Ehcache大小太深,无法处理每个Java底层对象,如ColdFusionFrameworks对象等。。。
我通过设置过滤器解决了问题。我使用系统属性<code>net.sf.ehcache.sizeof。过滤器,指向包含FQCN或大小调整引擎要忽略的字段的文本文件位置。资料来源:http://forums.terracotta.org/forums/posts/list/6371.page
我通过使用< code>-D参数启动Java VM来设置< code > net . SF . ehcache . sizeof . filter ,如下所示:
-D net.sf.ehcache.sizeof.filter=/My/Path/To/File.config
我的过滤器配置文件包含:
coldfusion.runtime.NeoPageContext
coldfusion.runtime.CfJspPage
coldfusion.monitor.memory.MemoryTrackable
coldfusion.monitor.sql.QueryStat
coldfusion.monitor.memory.MemoryTrackerProxy
javax.servlet.ServletContext
触发事件大约需要10秒。 以下是为 根据文档,这可能需要几秒钟。 此方法立即返回。调用它会导致位置管理器获得位置修复(可能需要几秒钟),并使用结果调用代理的locationManager(uuIdUpdateLocations:)方法。 但这会花费10秒吗?还是我遗漏了什么?
问题内容: 假设这样: 我为什么看不到任何东西? 问题答案: 当您将标记字符串传递到时,会使用(或其他适用于特殊情况的容器)容器上的浏览器属性将标记字符串解析为HTML 。无法解析SVG或其他非HTML内容,即使可以,也无法分辨出该内容应该在SVG命名空间中。 在SVGElement上不可用- 它仅是HTMLElement的属性。当前没有属性或其他方法(*)将内容解析为SVGElement。因此,
问题内容: 我正在尝试使用选择器将图像放置在另一个图像上,但是我发现将图像放置在一个元素之前(仅在其他某个元素之前)根本不起作用。具体来说,我的风格是: 我发现这很好用: 但这不是: 我可以使用或元素代替它,浏览器可以将我的图像正确地覆盖在该元素中的图像上,但是如果我将overlay类应用于自身,则无法正常工作。 我希望这项工作能够正常进行,因为这会让我感到不舒服,但更重要的是,我有大约100个我
谢谢你!
问题内容: 我想在单词中镜像字母,所以我使用了CSS变换属性,但是如果我将文本包裹在一个范围内则无法使用,但是如果我选择了ass或 那么转换不适用于内联元素吗? 示例1(转换失败) 示例2(Works,如果使用OR) 问题答案: 在官方W3规范中,在可转换元素下回答: 一个元素,其布局由CSS框模型控制,该CSS框模型可以是 块级 或 原子内联级元素 ,或者其“ display”属性可以计算为“
我正在编写XSD来验证XML,但在验证时出现了以下错误: 输出错误 使用XML架构验证当前文件: 错误:元素'{http://www.w3.org/2001/XMLSchema-instance}Gasto':不应使用此元素。预计为(加斯托) ...我不明白这个错误 以下是我的XML示例: 下面是我的XSD示例: