如何使用 aerospike 客户端进行触摸获取

How to do a Get with a touch using aerospike client

我想从 aerospike 获得记录。所以,我使用的是 Client.Get 方法。

但是,每当我执行Get操作时,我也想刷新记录的TTL。所以,通常我们使用 WritePolicy which allows us to set a ttl. But then the Get method accepts only a BasePolicy

下面的方法是正确的还是有更好的方法?

client.Get(nil, key, bin)

client.Touch(myWritePolicy, key)

在 operate() 命令中完成,您可以在同一把锁中同时使用 touch() 和 get(),一次网络访问。请注意,如果您的记录存储在磁盘上,无论您如何更新 TTL,都需要将记录新写入磁盘上的不同位置,因为 TTL 信息存储在记录元数据中。