我正在Java Web应用程序中成功使用EhCache。我现在正在尝试使用Terracotta服务器,因为我想在一个以上的服务器实例上分发应用程序,但是我很困惑。
当我将群集添加为资源(保持堆资源不变)时,我希望PUT时间会更慢。但是GET时间是否应该保持不变?当我将集群添加为资源时(如我所说,我保持堆资源不变),GET时间(由JMX MBeans衡量)增加了10到100倍。
我从文档中得出的理解是,在PUT上,需要告知授权层(在这种情况下为群集),因此可以驱逐所有上层。但是在重复GET时,仅应考虑堆层(当足够大时-在这种情况下,这只是一个实验)。
我在这里出错了吗?还是我的假设是正确的,我在某个地方出错了?
<cache alias="publisherCache" uses-template="eternal-10000">
<resources>
<heap>200</heap>
<terracotta:clustered-dedicated unit="MB">15</terracotta:clustered-dedicated>
</resources>
</cache>
vs。
<cache alias="publisherCache" uses-template="eternal-10000">
<resources>
<heap>200</heap>
</resources>
</cache>
在2000个GET中平均产生1600us和16us。
答案 0 :(得分:0)
您的配置似乎正常。第一次进入条目的速度会变慢,因为您在堆层上遇到了高速缓存未命中的情况。
但是,下面所有这些都应该和往常一样快。
能告诉我吗?