如何使用 Go 监听 Redis 中某个键的过期时间?

问题描述 投票:0回答:2

我正在生成一个将在 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()
}
go redis go-redis
2个回答
0
投票

使用 Redis 键空间通知。您没有说明您正在使用什么客户端库,但hereRedigo的示例。


0
投票

这对我有用https://mattboodoo.com/2021/07/02/using-redis-keyspace-events-with-golang-for-a-poor-mans-event-driven-application/

问题是这样的

redis.Client.Do(context.Background(), "CONFIG", "SET", "notify-keyspace-events", "KEA").Result()

当我添加它时,我能够监听过期事件

© www.soinside.com 2019 - 2024. All rights reserved.