如果将大数据放入群集

时间:2016-10-21 07:50:38

标签: ignite

我在纱线中部署了一个点燃集群。群集有5台服务器。每台服务器有10GB内存和8GB堆。我试图编写大量数据来点燃缓存。每个项目都是一个长度为100K的整数数组。备份是2.当我向点火缓存写入3980个项目时,群集的堆几乎已满。但是,不是拒绝写作,服务器一个接一个地下降。

我的问题是:

  1. 是否有配置或方法来控制服务器的缓存比例,因此堆不会满,服务器也不会停机?
  2. 显然,当写入太多缓存对服务器来说,服务器停机似乎对用户不利。我想知道如果用户使用默认配置,为什么会点燃这种情况。

1 个答案:

答案 0 :(得分:2)

Apache Ignite以及Java虚拟机不负责管理或控制放入Java堆的数据集的大小。这就是为什么OutOfMemoryError在Java API中呈现的原因,因为应用程序负责处理其数据集并确保它们适合堆中。

  1. 您可以设置eviction policy,Ignite可以将数据移至off-heap区域或swap或完全从内存中删除。

  2. 请参阅上面的前言。这是应用程序的责任。 Ignite可以在这里协助其驱逐策略,堆外模式和扩展能力。