1

阅读有关新Eviction Algorithm的文档(可从 Hazelcast 3.7 获得),我不太清楚该部分中提到的参数如何与实际的Map eviction 策略参数相关联。

即,算法解释使用:

GlobalCapacity: User defined maximum cache size (cluster-wide).
PartitionCount: Number of partitions in the cluster (defaults to 271).
BalancedPartitionSize: Number of elements in a balanced partition state, BalancedPartitionSize := GlobalCapacity / PartitionCount.
Deviation: An approximated standard deviation (tests proofed it to be pretty near), Deviation := sqrt(BalancedPartitionSize).

而驱逐策略配置提到(除其他外):

<hazelcast>
  <map name="default">
    ...
    <time-to-live-seconds>0</time-to-live-seconds>
    <max-idle-seconds>0</max-idle-seconds>
    <eviction-policy>LRU</eviction-policy>
    <max-size policy="PER_NODE">5000</max-size>
    ...
  </map>
</hazelcast>

一个假设是它与财产GlobalCapacity有某种联系max-size??

非常欢迎任何帮助澄清这一点!:)

4

1 回答 1

1

GlobalCapacity:用户定义的最大缓存大小(集群范围)。
PartitionCount:集群中的分区数(默认为 271)。

BalancedPartitionSize:平衡分区状态的元素个数,BalancedPartitionSize := GlobalCapacity / PartitionCount。
偏差:一个近似的标准偏差(测试证明它非常接近),偏差:= sqrt(BalancedPartitionSize)。

以上是参考手册中用于解释算法的变量。它们不是 API 变量。

但特别是在您的问题中:是的,全局容量是等效的,并且可以由用户在 map-config 中使用 max-size config 定义。

于 2016-10-28T12:56:18.277 回答