批量刪除memcache中資料的幾個方案

2021-08-30 13:00:31 字數 525 閱讀 9664

memcache的使用過程中,最常遇到的麻煩之一就是無法批量刪除memcache裡的資料,而這又是實際中很需要的操作,以下總結了了幾個方案:

flush_all 全部清掉(比較暴力 )

程式遍歷所有可能的key,刪除之修改應用程式中的key的生成規則(缺點是需要修改應用程式或配置檔案,在一些大型應用中是不可行的)

用多個key來定位乙個資料(我認為是最佳的方案;用這種方式,key對應的內容除了儲存實際資料,還要儲存資料的版本。另外,還需要另乙個公共的key2,用來存放當前有效資料的版本。每次讀取資料時,如果能取回有效資料,還要再讀取key2對應的版本,只有資料的版本不低於key2對應的版本的時候,資料才真正有效。清理方法:當這批資料過期後,只要把key2裡的版本提公升即可。)

第4個方案,對讀取的效能稍稍有所損害,因為要多次讀取memcache。乙個解決方案是利用getmulti方法 ,一次從memcache中並行的讀取多個item。

Extjs中批量刪除grid中資料

第一種 這是刪除選中的行的 在js頁面 定義修改後的json物件 var jsonarray 獲取選中的行 var storedata ext.getcmp contracttest page grid getselectionmodel getselections 選中行不為空 if stored...

大資料中的批量刪除

oken表中目前有400w條資料,且以每天十幾萬的資料繼續增長。需要定期將其中過期的資料取消掉,僅保留最新的萬計以內的資料 token表有兩個字段 id long 自增 update time timestamp,更新時間 其中在id上建立了索引 一次性刪除掉400w條資料顯然不靠譜,會發現刪除失敗...

JdbcTemplate資料批量刪除

由於資料的批量處理 比如往rdbms插入幾萬條資料 非常耗資源,因此建議在所有場合能夠借助於jdbc完成,而不要去採用hibernate api。本文主要圍繞spring內建的各類jdbc api抽象支援展開的。1.1.jdbctemplate內建的batchupdate final string ...