Browse Source

Merge branch 'feature_filter' of algorithm/recommend-server into master

dingyunpeng 1 year ago
parent
commit
dd969c2b02

+ 6 - 4
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/filter/strategy/ViewedStrategy.java

@@ -48,6 +48,8 @@ public class ViewedStrategy implements FilterStrategy {
     private Map<String, Integer> viewExpConfig;
     @Value("${video.filter.cache.expire.new:600}")
     private Long videoFilterCacheNewExpire;
+    @Value("${filter.view.cache.mongo.size:4000}")
+    private Integer filterViewCacheMongoSize;
 
     @Override
     public List<Long> filter(FilterParam param) {
@@ -75,11 +77,11 @@ public class ViewedStrategy implements FilterStrategy {
             // criteria.and("create_time").gte();
             Query query = new Query();
             query.addCriteria(criteria);
-            query.limit(10000);
+            query.limit(filterViewCacheMongoSize);
             List<VideoView> list = mongoTemplate.find(query, VideoView.class);
             //TODO 为什么限制最多10000条?是不是限制近几天更合适?
             if (CollectionUtils.isNotEmpty(list)) {
-                int limit = 10000;
+                int limit = filterViewCacheMongoSize;
                 for (int i = list.size() - 1; i >= 0 && limit-- > 0; i--) {
                     viewedVideoIds.add(String.valueOf(list.get(i).getVideoId()));
                 }
@@ -135,11 +137,11 @@ public class ViewedStrategy implements FilterStrategy {
             criteria.and("create_time").gte(System.currentTimeMillis() - videoViewedFilterTime * 1000);
             Query query = new Query();
             query.addCriteria(criteria);
-            query.limit(10000);
+            query.limit(filterViewCacheMongoSize);
             List<VideoView> list = mongoTemplate.find(query, VideoView.class);
             //TODO 为什么限制最多10000条?是不是限制近几天更合适?
             if (CollectionUtils.isNotEmpty(list)) {
-                int limit = 10000;
+                int limit = filterViewCacheMongoSize;
                 for (int i = list.size() - 1; i >= 0 && limit-- > 0; i--) {
                     viewedVideoIds.add(String.valueOf(list.get(i).getVideoId()));
                 }