我们计划将 C++ 内存数据库应用程序移植到 Java 中。 我们希望使用 Hazelcast 作为 Java 术语中的内存数据库解决方案。
拥有 40TB 数据的系统所需的吞吐量是每秒 30k 次读取和写入。 由于内存中的数据量很大,一旦系统出现故障,我们就不能在吞吐量上妥协。
使用 C++ 的内部实现为我们提供了将这些数据与磁盘存储一起存储在共享内存中的灵活性。 一旦应用程序重新启动,我们可以通过将进程附加回共享内存文件来恢复它。
我们可以在 Hazelcast 中提供类似的功能吗? 或者是否有一些类似的内存数据网格解决方案可以让我们拥有此功能?
最佳答案
目前 Hazelcast 没有磁盘溢出功能;但我们的人员正在努力解决这个问题,希望它能在 Hazelcast 3.3 中提供。
因此,您需要使用自定义 MapLoader/MapStore 接口(interface),您可以连接到 Map 实例并自行添加持久性。
关于java - Hazelcast 通过共享内存快速恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20834390/