点燃:从缓存中删除数据时,缓存中有10次放置操作

时间:2018-08-23 13:03:11

标签: ignite

我有一个json对象,我通过使用一个每5秒调用一次的线程将其放入缓存,我想在执行10次放置指令后删除缓存数据并将其放入第三方数据库。我该怎么办这是执行此操作的技术。如果有示例示例,请分享。谢谢

1 个答案:

答案 0 :(得分:0)

通过将cache storewrite-behindexpiry policy一起使用,可以实现类似的行为。

但是考虑到要保留在缓存中的记录数量,我将执行以下操作:

private static final int BATCH_SIZE = 10;

private Map<K, V> batch = new HashMap<>();

public void addRecord(K key, V val) {
    batch.put(k, v);

    if (batch.size() == BATCH_SIZE) {
        flush(batch); // Write data into the database.
        batch.clear();
    }
}