相信大家對memcache都不陌生,在專案中也經常使用memcache作為快取方案,那麼在使用過程中有沒有發現為什麼memcahce有兩個新增緩 存的方法:乙個是add,乙個是set,那麼你知道這2個方法有什麼不同嗎?什麼時候該使用add?什麼時候該使用set呢?
對於這點以前自己也沒有去深究,只知道要新增快取的用set就可以了,好像大多數時候使用的都是set方法,而add好像很少去使用。前幾天和乙個朋友聊天提起過這個,今晚在這裡就記錄一下這2個方法之間的不同。
1、memcache::add 方法:add方法用於向memcache伺服器新增乙個要快取的資料。
注意:如果memcache伺服器中已經存在要儲存的key,此時add方法呼叫失敗。
2、memcache::set 方法:set方法用於設定乙個指定key的快取內容,set方法是add方法和replace方法的集合體。
注意:1)、如果要設定的key不存在時,則set方法與add方法的效果一致;
2)、如果要設定的key已經存在時,則set方法與replace方法效果一樣。
3、 mmecache::replace方法: replace方法用於替換乙個指定key的快取內容,如果key不存在則返回false
在使用引數上add和set方法一樣,這裡就不在過多講解。
怎麼樣知道memcache add和set這兩個方法的區別了吧,以後使用時可以要注意了。
Dockerfile中的add指令和copy指令
在一次學習中看到的,記錄下來留作筆記。add 源路徑 目標路徑 copy 指令將從構建上下文目錄中 源路徑 的檔案 目錄複製到新的一層的映象內的 目標路徑 位置。使用copy指令,原始檔的各種元資料都會保留。比如讀 寫 執行許可權 檔案變更時間等。這個特性對於映象定製很有用。特別是構建相關檔案都在使...
hashSet的add和contains的區別
hashset是基於hash表的資料結構,實際上使用的是hashmap的資料結構,hashset不保證結迭代順序,也不保證保證表中的元素順序隨著時間的變化,hashset允許包含乙個null值。由於hashset使用的是hashmap為底層的資料結構,那麼hashset也是執行緒非同步的。新增指定元...
卷積神經網路中的add和concatnate區別
使用 densenet和inception中更多採用的是concatenate操作,而resnet更多採用的add操作。concatenate為橫向或縱向空間上的疊加,而add為簡單的畫素疊加。add使用keras中原始碼容易看到,是畫素的疊加 def merge function self,inp...