Maison >base de données >Redis >Quelle est la différence entre la commande setex et la commande set dans Redis

Quelle est la différence entre la commande setex et la commande set dans Redis

王林
王林avant
2021-02-07 09:28:532427parcourir

Quelle est la différence entre la commande setex et la commande set dans Redis

Introduction :

La commande Redis Setex définit la valeur et le délai d'expiration de la clé spécifiée. Si la clé existe déjà, la commande SETEX remplacera l'ancienne valeur.

La syntaxe de base de la commande redis Setex est la suivante :

redis 127.0.0.1:6379> SETEX KEY_NAME TIMEOUT VALUE

Commande SETEX Commande Redis string (String)

SETEX key seconds value

Associez la valeur à la clé et définissez la temps de survie de la clé en secondes (en secondes).
Si la clé existe déjà, SETEX écrasera l'ancienne valeur ;

Cette commande est similaire aux deux commandes suivantes :

$redis->SET('key', 'value');
$redis->EXPIRE('key','seconds');  # 设置生存时间

La différence est que SETEX est une opération atomique, la deux actions d'association de la valeur et de réglage du temps de survie seront réalisées en même temps. Cette commande est très pratique lorsque Redis est utilisé comme cache.

Valeur de retour :
Renvoie OK lorsque le réglage est réussi.
Lorsque le paramètre secondes est illégal, une erreur est renvoyée.

# 情况1:key不存在
$redis->SETEX('cache_user_id', 60,100001);//bool(true)
echo $redis->GET('cache_user_id');  # 值 //"100001"

echo $redis->TTL('cache_user_id');  # 剩余生存时间 //int(56)

# 情况2:key已经存在,key被覆写
$redis->SET('cd', "timeless"); //bool(true);
$redis->SETEX('cd', 3000,"goodbye my love"); //bool(true);
echo $redis->GET('cd');//"goodbye my love"

Recommandations associées : Tutoriel sur la base de données Redis

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer