NX PX redis
时间: 2024-08-20 21:03:30 浏览: 136
NX和PX是Redis中的两个命令参数,它们用于设定键的过期时间。
- NX(Not eXists):如果在设置键的时候,键不存在,则设置成功并返回1,表示成功设置了键;如果键已存在,则设置失败并返回0,表示没有对键进行设置。NX命令通常用于实现如分布式锁等需要确保原子性操作的场景。
- PX(MilliSeconds):它用于设定键的过期时间,单位是毫秒。例如,如果设置了一个键的生存时间为10000毫秒,那么这个键将在10秒后自动过期并被Redis从数据库中删除。
这两个参数通常一起使用,以确保键在成功创建的同时具有特定的过期时间。例如,使用 SET key value PX 10000 NX 命令,可以创建一个键值对,其中键在10秒后自动过期,如果键已存在则不会进行设置。
相关问题
redis set
Redis中的SET命令用于添加一个或多个指定的成员到集合中,如果键已经存在并且其值是一个集合,则添加成员到集合中。SET命令是原子操作,这意味着在执行过程中不会被其他命令中断。SET命令可以用来实现各种集合运算,比如交集、并集、差集等。以下是SET命令的基本用法:
1. 添加单个元素到集合中:
```
SET key member [NX] [XX] [EX seconds] [PX milliseconds] [KEEPTTL]
```
其中,`key` 是集合的名称,`member` 是要添加的元素,`NX` 表示仅当键不存在时才添加,`XX` 表示仅当键存在时才添加,`EX` 设置键的过期时间(以秒为单位),`PX` 设置键的过期时间(以毫秒为单位),`KEEPTTL` 保持原有过期时间不变。
2. 添加多个元素到集合中:
```
SADD key member [member ...]
```
`SADD` 是 Redis 为 SET 命令提供的另一个接口,用于一次添加多个成员。
以下是SET命令的几个常见应用场景:
- 去重:由于集合不允许有重复的成员,可以用来记录唯一的数据。
- 点赞功能:可以将用户ID添加到某个主题的点赞集合中。
- 关注系统:用户关注的主题或者人可以被存储在集合中。
redis 设置setting
Redis是一个键值对存储数据库,可以使用SET命令来设置键值对。在Redis中,设置一个键值对的命令格式为:
```
SET key value [EX seconds] [PX milliseconds] [NX|XX]
```
其中,key是要设置的键,value是要设置的值。EX和PX选项用于设置键的过期时间,分别表示以秒和毫秒为单位的过期时间。NX和XX选项用于控制键是否存在。NX表示只有当键不存在时才设置,XX表示只有当键已存在时才设置。
例如,设置一个键名为"username",值为"john",过期时间为60秒,可以使用以下命令:
```
SET username john EX 60
```
如果要设置一个键名为"username",值为"john",并且只有当该键不存在时才设置,可以使用以下命令:
```
SET username john NX
```
如果要设置一个键名为"username",值为"john",并且只有当该键已存在时才设置,可以使用以下命令:
```
SET username john XX
```
阅读全文