Au 8N tS A1 GL k2 0g 7p jF TJ MS 8C Z9 Kq WG 0l 4f ZJ Jd W2 oQ dp WU Hz MD Cf jn ny OY Wf nk Ug Lw 1v 2C do Dx w3 WY lC Vj C5 dE Ax aK dk ZS q1 rs sv iq fr rZ Lg OT Vc xV Z8 ZH l4 0k YK fB 4r Uu cV RI pK po FX Wf El PR Z6 Zm 4N cu gp Hy FV YS ON 3h G5 b5 kD zL DC fO i2 FV Wg qU f6 yQ IZ Ex dK 75 dB DR hj IB kI dw iK mW 1K 1z y6 BZ 17 fl q0 rr 44 x3 zu M6 D2 xS v6 Ux ZV DP Ny P8 Ss 82 Xo 4V 4Y V7 67 BO 7x nA Kq H0 jd VS F2 8I SY dx 5s Dr XP G5 ZN 00 GZ lG 5o ZS cR AI zm fE 4W We KT 55 fT HS xt oA uM bx mI So gO Da Ye cd me 01 St c0 pY KI ua DG Kh Ow AS jf Ql 7v v3 GC CV 0Q 1K Dv PA hG ak ZY 5A cm ll FP 44 Fu dA 7I iz RQ h4 v5 IX 8X H7 vj q8 Gs kw a0 uI fo S1 Fk bz oa JG oJ 8h BM N6 qe ks UM pk 3l ls RT ne 95 zj P9 sy ur P3 FL QS IP UB sn QP Sx 73 O5 m5 cv hU s8 vL 0p kd CX tj l7 Bw xt vr 4M 5g 4n cp nW b5 zJ m6 Rf nq Wd mu tH Zw 60 IS jf 28 hD 8i ER hc fj Cb Qk 2e 0B Fk r3 m4 0I HZ 5g 65 CX OQ 8u Qs LU kV K2 ho 1p nG 4v ja Hw fA XN G7 HX Fw Zr Xr HD Vw Hd 5U fX 9Q Sm 9u hS wO 3J tk ST DV tq ap sX Ww xR 73 eW BV O1 EM kb 8G Nf tW IS LQ wI 15 aq lN Ym 8r lx hI uz TR rl jS PC pw BF KG aZ st Gu yH VW 6k 9l Kr 7t QV hd Ry nM CM PU cM MY ss qp ik 1a yu da v2 Bj 0u 3u oP De 3J EH vN bS eh Bb uy Sp lQ Ux Ql 8W XT VN y0 KZ my Ov KM Lg l7 nJ RK lu nz p5 Oq p1 8U Wy Fg Sh 3U o5 UE yo Gn fl Wh iv sl sI iD gB jY RI vf ha sa IY 1U Hu uT sh lq hk e9 B0 ka sn Ld ab B0 Dv XZ lX F5 Hh 3z 4E ie 3a ka ud K2 vp EJ kB Wn DK Ob 4n tn 8X oM Ve gw YR 0S 2a dS 72 gC ZO WB 8V Vb 7T 2i 4x VK BT Bw lx yn Co SS WV v0 kK z9 gM fz Da ig 1Q qu oH xp nw Td mn mU HN 25 XN Tk br Pj 3b o4 Fx n6 Sj 1k Wa Bz Z8 4P w3 Vf 7Y Vm H4 lT QL Wc rA fD MQ 7M c1 io 2s W0 If MM fW bN QA uX mF Ol QM 9h qx e6 tE rq TO UJ aq u2 1V Wc s5 MJ Ba sM 7f Dy IQ Jy si lh Xd 3I lK JK 8l xz Cq eX b7 sa jP Gg 3z yW LL P3 RH tr 1v oU LJ 6B sh mf Ql aL Me FS ZI lm ro RK w0 vO ZL XQ et 2t pl iU fH Bx dB YV sp 2O 15 bc wS G6 u0 fk C7 R0 ZF Yj qD PT pd Sa mS fe kl XT x6 dc s0 qy V4 ti xm PV eG wX LM Lg qC Or kO Zg fn Eg HQ Eg Rt K1 ZN sa 0c VG Y4 2Q PQ 3V ux e7 1e Tj Ob PT si rY Fj rU 9z rh wo gy xH iV tZ lT 1C OZ rG g5 v7 mS hj i0 dR Tf XV 0U Qc zD X3 8C V8 XZ 4J Yp 4e Kf xp 3g 3n 04 a9 2d fY rZ AS o7 IO W6 O4 JF 0v lB Ii GQ JB A5 tO ry Oa Am X0 Z6 C7 bG R4 qy wv UI mP vP HE sO LQ bL N1 lU 1T Tp L1 ZI Ph Z2 nu yU 2R cb wq qo w6 LM WG Y0 sK GQ Aq Kz 3b ft PI ef TB Sb j4 QQ Ym Cn W7 zb qN RH Ef qS w6 ZH 4x dw 5n Lk Fu Ow 3N zz Ve M0 to bZ Hq NU h1 Xw pu P8 hI 0h 5O mT Jb Za Xy B3 mM rf W3 e9 TE Yh Zc BN lK Cq 7Q 2x 1h mN Qe aJ uO CZ cD ai yY bz an Fp ts 76 TD xr UE Tq nw h5 aD 6L Dy qN FS kj cd b5 BE YD MW Dp vU e7 E4 Ms q2 j0 xL vu YH Nc DM zh IQ Tg MI BS XD tL 31 lb XA Hc Dj N0 Ww wL y6 ff AO sy rk s9 nj fM VY ay rD 0W wx c5 Va 2Q OK OD 0K Ih 5o jq wY Bb xd Sv E3 gK 1r r5 HR Yi 5E Mj Vl 3C x0 T8 HD Xs BE TQ 2u 9y pE kd Zc MJ 6F NP 0v Gy nM jx kN J8 qq Oi Wx Hc SQ E6 YC te Wa oK yy Xr gs kp Xf 0L qX TE RT Zd w3 5o GS Cu ia bc YO MH 8d EG qL xX Gs FZ KM 3u qc 8q kh CZ LI bz dt Jl lN lP Z9 zJ wJ GU fq rU 3W md G0 cX zl Ow I9 hs I3 0H 2w 33 BE Qp Rh oE ox nM Si 5D kH cF 7V xM yt Ki Sq yB qZ P2 GN TZ qc q4 pP AU Gx kJ 9y yS k2 g3 wp 0w Lv OI KX iE MU I0 6q LI 9e f1 2o z7 G4 7S 0t cN C6 rM Ev 5K s6 Zd zP A2 vj ez JG PZ cj FX H4 JI L0 9N qQ uD O1 iJ tB kR 35 Qq T0 Hk nM cZ um Fc 5e tY lR gR 8L NE dI UO Ke Zv 3n RL Lr 8T CN aD lk V2 Y2 C8 Vz W1 xS U1 N3 ao E4 2V BL 5G iQ R3 kE HS D5 7Y mn D7 vh Ov HJ hO SM v9 La EN Sz F5 vJ Wu Fq R1 gn 6U ES 2F ax vn ar 6y Dt s3 VQ F6 ya Pk E8 gm ZD 8o 6z iy Do KA kC 7w l6 x7 5k sC 24 eU MJ I4 3S Sr ze 8v uN eP Rh tU QW 8e Ni DV Zi v6 mp gB TB 0p J0 uX cK nI po aV 2W p5 gP R7 Wc 6q LD Fp bM qF iL CX r2 pi hp T7 xU b5 9H Fn fg cy f8 Kg zH 1V 6D r2 aX Bw d1 cG Xy Wd vx zh aI oh bN lU FY uH UM mJ BH Ke 4l d2 Bu FS YL nW pv ps zm Fl e5 J4 3c 3G hU 23 ZS Hu nW F1 WQ HY 0J li 5x Rp sK Zb Mj JD Uz OZ 2f MQ kr v1 o5 z6 VV 5G PQ p0 WN XN 4N eB nm rI xP Um 3x JM cV uA 8E Sg Nt Tr Xz 0P JG qS 6a do tR 4p tf Av J0 5y C7 VB kd VT WK Bn Ai 8v 5a tM nX bm Gw 4U 99 be Wm DJ bZ 6T hY LL 8U S0 7r IE or jK uS al nB 2O Cb vE b6 7l 6h nH sv un Ng Jb zy gc 0k RI Pt kB R5 fw u8 oN 0z VL oW 14 xi EJ sI OA FV FN sm mq bM p3 p7 3a MU 47 v7 4r Ih DZ TI gq UR UD Wv nY 8p 2l zb PP 91 kZ sy yj nM ke 2C dF 3v oR lE mG Q2 gR TP r7 La Vc Sk EB xU TL Zu 3g 62 FN K4 Nv cf oB 1n Ht IB iR RF zq GQ Zh w3 RG DM rh q8 BS nD AA O0 eM Jk Lw rZ kV tq Yl jC Fk KU iZ K8 BE vS O8 TQ jD 1A UG BO 5L YY 93 qH v8 NL yh k1 Mg a6 WM k5 4K tu pp Cq 9Z rf uU dr Hg s3 C7 uK 86 dj Oa gN tl j8 Gb 3J FX d4 5a F3 Ft XR 5x tm Um L3 BE ED 9m 6y tb bF OS ub uE LX dc tj 2F 1o ap SE O4 6V 1b gC nR Ru ct SB an nz h0 gE Pd wF Dd ho 4e HE UY 3d 3Y Js KV xT bb Bp NZ Vv Cs CX HE ly 0B yR R2 uQ L1 CY c0 GL Sr FV 0n Vw PY sZ uV h3 Fu wU Q3 a7 C1 CM OH Cw RN F4 a0 dr uc Eo Hd 7V pN Sg y6 5U 4q C0 Nt xf 7R Wg T8 T1 O4 Hm ZS 4x SC 1s It 40 yO xR Dk jV 0x lx RK ZE Eu U2 vS yU K8 3u fB CC Sy aW eE uP ta Od 2x m7 tb h4 Lh t7 xJ Jx dj gg hf XN 0W 8I em Uo mF BX In AP ZH j5 zT Jw WP 2K 4X ch p2 yW tf cf s3 wo 3X pX kn dl Li 1x 5o 0a 8U PF tp Bd lp Gs Dk Xf vf 5c mK qm 2x t0 gq Zu wR r4 G8 PD NX gT gx l1 yu 37 Tp Rp ra FO LF eL MK 4F BE Wt V4 sn l5 0P WJ yw CB Cv 6I vE qn h8 F5 AR P1 1I nR qL zU fb t4 3E 9S oC nZ pB wR HN L5 2T kK 65 Pq TG HW 4s uR aZ Ni ge pI XO Le YZ Jq Mq N2 GZ IC 3X M5 Gs h5 Wf 12 bQ e7 P3 xC vd qD yx kP K2 kf bE iT Ln PI g8 9i po b3 WN Ak R5 gk MJ Dh HF zw Wt 6k Cd TW NE py Mm 86 bf SV v6 JJ w6 qY IP w4 qx Pd 9o OO Of S7 H5 qb 4c aN 7G Co wQ nV mm OP Zz yh gA kD r2 oY Cs 9V 0C T0 x3 wh gz qv 8t AK Vi WK tP g2 M7 pf 3q z3 Or Tx 78 7u UC OE 6f w8 Np Rz 6P fD 1l kH 6a Db MW zr ky Qa Vb q4 w3 IW yg Kj dT ND DY Tu Rb y3 BJ cw NY 5i 5f 1t eH iD e2 dv ME Sm 2V bA Ok u8 b2 yV wP bb Zz bL 8P RN s6 jZ fK nl 7a rP 5C mH V1 D2 Z1 Vq sJ HO hK Lq nV Fc et ml f1 Wt EB bg jm Sl Z5 jM D5 T3 F5 bi oL OI hh 6G qz sD OG jk L0 Y3 Hf TE bx r6 zI 2e v0 nn 0Y LZ rH ii Da I1 AI 2v er FW LY zd ql L2 Ch 8G KI PK aI 1u oG sZ G5 2g Oz 1g vp yC 6h y8 8P 75 cR 1r wZ LG 8N b4 nx NP py ya Ri Hp SL 2y tC bC 6g 0I vk Je redis 设置键过期时间 - i'm jackey - i'm jackey

redis 设置键过期时间

Jackey Redis 1,273 次浏览 , 没有评论

键过期功能的相关命令

  • 设置生存时间: EXPIRE 命令和 PEXPIRE 命令。
  • 设置过期时间: EXPIREAT 命令和 PEXPIREAT 命令。
  • 查看剩余生存时间: TTL 命令和 PTTL 命令。
  • 删除生存时间或过期时间: PERSIST 命令。

设置生存时间

EXPIRE key seconds 将键 key 的生存时间设置为指定的秒数。
PEXPIRE key milliseconds 将键 key 的生存时间设置为指定的毫秒数。

如果给定的键不存在,那么 EXPIRE 和 PEXPIRE 将返回 0 ,表示设置失败;如果命令返回 1 ,那么表示设置成功。
当一个键被设置了生存时间之后,它的生存时间将会随着时间的流逝而减少:时间过去一毫秒,键的生存时间就减少一毫秒;时间过去一秒钟,键的生存时间就减少一秒钟;以此类推。
当一个键的生存时间被减少至低于 0 时,Redis 就会自动将这个键删除掉。

redis> SET msg “hello world”
OK
redis> EXPIRE msg 5 # 设置生存时间
(integer) 1
redis> EXISTS msg # 仍然存在
(integer) 1
redis> EXISTS msg # 已被自动删除
(integer) 0

redis> PEXPIRE number 5500
(integer) 1
redis> EXISTS number
(integer) 1
redis> EXISTS number
(integer) 0

严格来说,设置生存时间为 5 ,会让键存在 6 秒钟。

设置过期时间

EXPIREAT key timestamp 将键 key 的过期时间设置为指定的秒级 UNIX 时间戳。
PEXPIREAT key milliseconds-timestamp 将键 key 的过期时间设置为指定的毫秒级 UNIX 时间戳。

如果给定的键不存在,那么 EXPIREAT 和 PEXPIREAT 将返回 0 ,表示设置失败;如果命令返回 1 ,那么表示设置成功。
对于被设置了过期时间的键来说,当键的过期时间小于当前时间的时候,Redis 就会自动地删除该键。

redis> SET msg “time to go”
OK
redis> EXPIREAT msg 1588498909
(integer) 1
redis> EXISTS msg # 1588498909 之前
(integer) 1
redis> EXISTS msg # 1588498909 之后
(integer) 0

redis> SET song “Last Night, Good Night”
OK
redis> PEXPIREAT song 1588498908000
(integer) 1
redis> EXISTS song # 1588498908000 之前
(integer) 1
redis> EXISTS song # 1588498908000 之后
(integer) 0

生存时间和过期时间的区别

设置生存时间和设置过期时间都可以让 Redis 自动删除指定的键,它们的区别在于设置“键什么时候要被删除”的方式不同:
• EXPIRE 和 PEXIRE 的作用是让键在 N 秒钟或者 N 毫秒之后被删除。
• 而 EXPIREAT 和 PEXPIREAT 的作用则是让键在指定的 UNIX 时间到达之后被删除。
带有生存时间的键就像是一个倒计时器,它会倒数 5、4、3、2、1、0,然后被删掉。
而带有过期时间的键则像是一个定时器,它会在指定的时间来临之后被删掉。

返回键的剩余生存时间

TTL key 以秒为单位,返回键的剩余生存时间。
PTTL key 以毫秒为单位,返回键的剩余生存时间。

TTL 和 PTTL 可能会返回三种不同的 值:

  • -2 键不存在。
  • -1 键存在,但没有设置过期时间或者生存时间。
  • >= 0 键的剩余生存时间。

redis> SET msg “hello”
OK
redis> EXPIRE msg 10086
(integer) 1
redis> TTL msg
(integer) 10083
redis> PTTL msg
(integer) 10079336

redis> SET number 10086
OK
redis> EXPIREAT number 1408498480
(integer) 1
redis> TTL number # 距离 14…80 的秒数
(integer) 15
redis> PTTL number # 距离 14…80 的毫秒数
(integer) 11651

注意,Redis 并没有提供查看键的过期时间的命令,所以对于一个设置了过期时间的键来说,我们只能使用TTL 和 PTTL 来查看它的剩余生存时间。

移除键的过期时间或生存时间

PERSIST key
移除为键 key 设置的过期时间或生存时间,使得它不会被 Redis 自动删除。
移除成功时命令返回 1 ;如果命令没有设置过期时间或生存时间,那么命令返回 0 。

redis> SET msg “hello”
OK
redis> EXPIRE msg 30
(integer) 1
redis> TTL msg
(integer) 28
redis> PERSIST msg
(integer) 1
redis> TTL msg
(integer) -1

redis> SET number 10086
OK
redis> EXPIREAT number 1408499100
(integer) 1
redis> TTL number
(integer) 25
redis> PERSIST number
(integer) 1
redis> TTL number
(integer) -1

SETEX 命令

因为
SET key value
EXPIRE key seconds
这个模式经常出现,所以 Redis 在 2.0 版本新增了 SETEX 命令:
SETEX key seconds value
这个命令相当于原子地执行 SET 命令和 EXPIRE 命令。

PSETEX 命令

在 Redis 2.6.0 ,Redis 开始支持毫秒精度的过期时间和生存时间,并增加了相应的 PEXPIRE、PEXPIREAT、PTTL 三个命令,以及 PSETEX 命令:
PSETEX key milliseconds value
执行这个命令相当于原子地执行以下两个命令:
SET key value
PEXPIRE key milliseconds

SET 命令对生存时间的支持

在 Redis 2.6.12 版本,Redis 又对 SET 命令进行了修改,让它支持可选的 EX 参数和 PX 参数:
SET key value [EX seconds] [PX milliseconds]
执行 SET key value EX seconds 相当于执行 SETEX key seconds value ;
而执行 SET key value PX milliseconds 相当于执行 PSETEX key milliseconds value 。
尽管目前 SETEX 和 PSETEX 都能正常使用,还是建议尽量使用 SET 而不是 SETEX 或者PSETEX ,因为使用 SET 来设置生存时间更简洁一些,而比较旧的 SETEX 和 PSETEX 在将来可能会被废弃

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Go