我正在生成一个将在 Redis 中过期的密钥。作为一种编程语言,我使用 Go。问题是我需要知道某些东西何时过期,因为基于此,我知道哪个密钥即将过期或它包含哪些数据,并且我可以知道它何时不再存在于 Redis 中。如何使用 Golang 监听过期事件?我见过 TypeScript 中的示例,但没有见过 Golang
这是我设置过期密钥的代码
func (r *Redis) Set(ctx context.Context, key string, value interface{}, expiration time.Duration) error {
return r.Client.Set(ctx, key, value, expiration).Err()
}
使用 Redis 键空间通知。您没有说明您正在使用什么客户端库,但here是Redigo的示例。
问题是这样的
redis.Client.Do(context.Background(), "CONFIG", "SET", "notify-keyspace-events", "KEA").Result()
当我添加它时,我能够监听过期事件