//list为需要删除的key数据集合
for (Map<String, Object> map : list) {
//获取账号需要删除的key内容
Object cpm_username = map.get("username");
//根据key计算出槽位
int slot = JedisClusterCRC16.getSlot(Convert.toStr(cpm_username));
//判断是否有键
if (soltCount.containsKey(slot)) {
soltCount.get(slot).add("CPM_user_" + Convert.toStr(cpm_username));
} else {
soltCount.put(slot, Lists.newArrayList( Convert.toStr(cpm_username)));
}
}
//遍历 只有属于同一个槽的才能批量删除
for (Map.Entry<Integer, List<String>> entry : soltCount.entrySet()) {
//删除
JedisClusters.del(entry.getValue().toArray(new String[entry.getValue().size()]));
log.info("删除key:{} 个", soltCount.size());
}