...
|
...
|
@@ -82,14 +82,12 @@ public class SknRecallCacheBean { |
|
|
if(productSknToIdMap==null || productSknToIdMap.isEmpty()){
|
|
|
return new ArrayList<>();
|
|
|
}
|
|
|
|
|
|
List<Integer> recommedProductIds = new ArrayList<>();
|
|
|
recommedProductIds.addAll(productSknToIdMap.values());
|
|
|
|
|
|
ParamQueryFilter paramQueryFilter = userRecallRequest.getParamQueryFilter();
|
|
|
RedisKeyBuilder redisKeyBuilder = pageProductIdBitSetComponent.genRedisKeyBuilder(paramQueryFilter);
|
|
|
|
|
|
//2、先从本地缓存获取
|
|
|
ParamQueryFilter paramQueryFilter = userRecallRequest.getParamQueryFilter();
|
|
|
RedisKeyBuilder redisKeyBuilder = pageProductIdBitSetComponent.genRedisKeyBuilder(paramQueryFilter)
|
|
|
Map<Integer, Boolean> ehcacheQueryResult = ehCache.getFromBitSet(redisKeyBuilder,recommedProductIds);
|
|
|
if (ehcacheQueryResult != null) {
|
|
|
return this.filterSknByCacheQueryResult(recommedSknList,productSknToIdMap, ehcacheQueryResult);
|
...
|
...
|
@@ -98,7 +96,7 @@ public class SknRecallCacheBean { |
|
|
//3、再从redis的bitset缓存结构中过滤
|
|
|
Map<Integer, Boolean> redisQueryResult = searchRedis.getFromBitSet(redisKeyBuilder, recommedProductIds);
|
|
|
if (redisQueryResult != null) {
|
|
|
//回写本地缓存
|
|
|
//TODO 回写本地缓存
|
|
|
return this.filterSknByCacheQueryResult(recommedSknList, productSknToIdMap,redisQueryResult);
|
|
|
}
|
|
|
|
...
|
...
|
|