我正在尝试在(上午 6 点、下午 12 点、下午 6 点和上午 12 点)将数据设置为 Redis。但我能做的就是为redis中的数据缓存设置一个过期时间。Golang有什么办法可以做到这一点吗?
代码:
err := client.Set(key, data[]byte, 6 * time.Hour).Err()
我正在尝试在(上午 6 点、下午 12 点、下午 6 点和上午 12 点)将数据设置为 Redis。但我能做的就是为redis中的数据缓存设置一个过期时间。Golang有什么办法可以做到这一点吗?
代码:
err := client.Set(key, data[]byte, 6 * time.Hour).Err()
因为您想每 6 小时在 redis 中添加数据。您应该为此使用 cronjob。
我创建了一个示例场景,可能会对您有所帮助:
为了更好地理解,您可以参考gocron包。
s := gocron.NewScheduler(time.UTC)
s.Every(6).Hours().Do(func(){ //you can change it
err := client.Set(ctx, "key", "value", 0).Err() //your logic
if err != nil {
panic(err)
}
})