新聞中心
Redis的WATCH命令是Redis 2.2或以上版本提供的一種機(jī)制,它可以有效地監(jiān)控?cái)?shù)據(jù)變化,從而保證Redis數(shù)據(jù)庫的原子性操作。

創(chuàng)新互聯(lián)建站從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站制作、成都做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元烏恰做網(wǎng)站,已為上家服務(wù),為烏恰各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
基本使用原理是當(dāng)Redis server接收到WATCH命令時,它會記錄被監(jiān)控的鍵的當(dāng)前值,當(dāng)執(zhí)行MULTI開始一個新的事務(wù)時,Redis就會檢查所有被監(jiān)控鍵的值,如果它們有任何變化,事務(wù)就不會被執(zhí)行,watch命令提供了一種管理Redis事務(wù)的有效途徑。
下面是一個基本使用示例,先使用WATCH命令監(jiān)控鍵key1,然后開始Redis事務(wù),執(zhí)行相關(guān)命令,最后使用EXEC命令提交事務(wù):
redis 127.0.0.1:6379> WATCH key1
OK
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> GET key1
"value1"
redis 127.0.0.1:6379> SET key1 "value2"
OK
redis 127.0.0.1:6379> EXEC
1) OK
要注意的是,在MULTI和EXEC之間的任何命令都會檢查所有被WATCH的鍵的值,如果其中任何一鍵發(fā)生變化,整個事務(wù)都不會被執(zhí)行,這可以避免由于第三方的干擾而導(dǎo)致的沖突。
另外,WATCH也可以搭配其他的原子命令一起使用,比如:
redis 127.0.0.1:6379> WATCH key1
OK
redis 127.0.0.1:6379> INCR key1
(integer) 1
redis 127.0.0.1:6379> EXEC
1) (integer) 2
可以看到,使用WATCH機(jī)制可以有效地監(jiān)控?cái)?shù)據(jù)變化,從而保證Redis數(shù)據(jù)庫的原子性操作,它是一個非常有用的工具,可以極大地增強(qiáng)程序的安全性。
成都服務(wù)器租用選創(chuàng)新互聯(lián),先試用再開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價格厚道的香港/美國云服務(wù)器和獨(dú)立服務(wù)器。物理服務(wù)器托管租用:四川成都、綿陽、重慶、貴陽機(jī)房服務(wù)器托管租用。
本文標(biāo)題:命令Redis中的Watch命令監(jiān)控?cái)?shù)據(jù)變化的有效手段(redis里watch)
當(dāng)前地址:http://m.5511xx.com/article/cdgdgdi.html


咨詢
建站咨詢
