Browse Source

MOD:优化过滤器

sunxy 1 year ago
parent
commit
cdbce47272

+ 2 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/implement/recall/HistoryLongPeriodFilter.java

@@ -21,6 +21,8 @@ import java.util.List;
 import java.util.stream.Collectors;
 
 /**
+ * TODO 有性能问题,暂时废弃
+ *
  * @author sunxy
  */
 public class HistoryLongPeriodFilter extends AbstractFilter<Video> {

+ 3 - 3
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/implement/recall/PreViewedFilter.java

@@ -23,13 +23,14 @@ public class PreViewedFilter extends AbstractFilter<Video> {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(PreViewedFilter.class);
 
-    private final PreViewedService preViewedService;
+    private final Set<Long> preViewedVideoIds;
 
     public PreViewedFilter(FilterConfigInfo filterConfigInfo,
                            RecommendRequest recommendRequest,
                            User user) {
         super(filterConfigInfo, recommendRequest, user);
-        preViewedService = ServiceBeanFactory.getBean(PreViewedService.class);
+        PreViewedService preViewedService = ServiceBeanFactory.getBean(PreViewedService.class);
+        preViewedVideoIds = preViewedService.getVideoIds(this.requestContext.getAppType(), user.getMid());
     }
 
     @Override
@@ -40,7 +41,6 @@ public class PreViewedFilter extends AbstractFilter<Video> {
                 || CollectionUtils.isEmpty(list)) {
             return;
         }
-        Set<Long> preViewedVideoIds = preViewedService.getVideoIds(this.requestContext.getAppType(), user.getMid());
         LOGGER.info("PreViewedFilter doFilter traceId:{}, preViewedVideoIds:{}", requestContext.getRequestId(),
                 preViewedVideoIds);
 

+ 1 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/implement/recall/ViewedHistoryFilter.java

@@ -45,7 +45,7 @@ public class ViewedHistoryFilter extends AbstractFilter<Video> {
                                User user) {
         super(filterConfigInfo, recommendRequest, user);
         mongoTemplate = ServiceBeanFactory.getBean(MongoTemplate.class);
-        redisTemplate = SpringContextHolder.getBean("longVideoRedisTemplate", RedisTemplate.class);
+        redisTemplate = SpringContextHolder.getBean("filterRedisTemplate", RedisTemplate.class);
         historySet = this.loadUserHistory(user);
         if (historySet == null) {
             historySet = new HashSet<>();

+ 5 - 2
recommend-server-service/src/main/resources/filter_config.conf

@@ -1,7 +1,10 @@
 recall-config = {
   filter-config = {
-    history-viewed-filter-config = {
-      filter-name = "com.tzld.piaoquan.recommend.server.implement.recall.HistoryLongPeriodFilter"
+    viewed-filter-config = {
+      filter-name = "com.tzld.piaoquan.recommend.server.implement.recall.ViewedHistoryFilter"
+    }
+    pre-viewed-filter-config = {
+      filter-name = "com.tzld.piaoquan.recommend.server.implement.recall.PreViewedFilter"
     }
   }
 }