首页  

aerospike 最大 TTL 限制     所属分类 aerospike 浏览量 217
TTL  time to live 
单位秒 ,最大10年   3600*24*365 * 10 
超过报错 
com.aerospike.client.AerospikeException: Error Code 4: Parameter error

写入操作可设置过期时间 , 不设置  使用  namespace 的 default-ttl
读操作不会修改 
如果 某条记录 只有读 没有写的话 ,ttl会不断变小 ,直到过期

TTL 为0或-1的记录不会过期或逐出
TTL 客户端主动设置,否则使用namespace的默认TTL配置
update和touch操作会更新TTL
NSUP (namespace supervisor) 线程 负责 过期 和 逐出操作。
NSUP线程周期运行, 时间间隔通过 nsup-period 参数设置
nsup-period 默认 120s


for(int i=1;i<100;i++) {
    System.out.println("year="+i);
    final int maxttl = 3600*24*365*i;
    policy.expiration = maxttl;
    String key = "key-"+99;
    String value = key+"-"+LocalDateTime.now();
    AsClientUtil.put(client, policy, namespace, dataSetName, key, bin, value);
}
//  com.aerospike.client.AerospikeException: Error Code 4: Parameter error
        


完整测试代码
https://gitee.com/dyyx/asdemo/blob/master/src/main/java/demo/TTLTest.java


aerospike数据逐出与停止写入相关参数 aerospike中的过期驱逐和停止写入机制

上一篇     下一篇
springboot2 FileEncodingApplicationListener简介

maven jar包冲突处理

aerospike 某客户 stop-write 实例

aerospike常见错误

aerospike 记录 TTL 说明

写博客的好处