소스 검색

feat:修改没有回传广告主ID获取方式

zhaohaipeng 6 달 전
부모
커밋
0a3ea2167b

+ 1 - 8
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/RankService680.java

@@ -27,9 +27,6 @@ import java.util.stream.Collectors;
 @Service
 public class RankService680 extends RankStrategyXGBBasic {
 
-    @ApolloJsonValue("${no.postback.conversion.adverids:[]}")
-    private Set<String> noPostbackConversionAdVerIds;
-
     private Map<String, double[]> bucketsMap = new HashMap<>();
 
     private Map<String, Double> bucketsLen = new HashMap<>();
@@ -37,11 +34,7 @@ public class RankService680 extends RankStrategyXGBBasic {
     @Override
     public List<AdRankItem> adItemRank(RankRecommendRequestParam request, ScoreParam scoreParam) {
 
-        Set<String> noApiAdVerIds = adRedisHelper.sMembers(RedisPrefixEnum.ADVER_IS_API_EQ_0_IDS.getPrefix());
-        log.info("Redis中缓存的没有回传广告主ID集合: {}", noApiAdVerIds);
-        if (CollectionUtils.isEmpty(noApiAdVerIds)) {
-            noApiAdVerIds = noPostbackConversionAdVerIds;
-        }
+        Set<String> noApiAdVerIds = getNoApiAdVerIds();
 
         long ts = System.currentTimeMillis() / 1000;
 

+ 1 - 11
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/RankService683.java

@@ -1,7 +1,5 @@
 package com.tzld.piaoquan.ad.engine.service.score;
 
-import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
-import com.tzld.piaoquan.ad.engine.commons.enums.RedisPrefixEnum;
 import com.tzld.piaoquan.ad.engine.commons.score.ScoreParam;
 import com.tzld.piaoquan.ad.engine.commons.score.ScorerUtils;
 import com.tzld.piaoquan.ad.engine.commons.thread.ThreadPoolFactory;
@@ -11,7 +9,6 @@ import com.tzld.piaoquan.ad.engine.service.score.dto.AdPlatformCreativeDTO;
 import com.tzld.piaoquan.ad.engine.service.score.param.RankRecommendRequestParam;
 import com.tzld.piaoquan.recommend.feature.domain.ad.base.AdRankItem;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
@@ -32,9 +29,6 @@ import java.util.stream.Collectors;
 @Service
 public class RankService683 extends RankStrategyXGBBasic {
 
-    @ApolloJsonValue("${no.postback.conversion.adverids:[]}")
-    private Set<String> noPostbackConversionAdVerIds;
-
     private Map<String, double[]> bucketsMap = new HashMap<>();
 
     private Map<String, Double> bucketsLen = new HashMap<>();
@@ -44,11 +38,7 @@ public class RankService683 extends RankStrategyXGBBasic {
 
     @Override
     public List<AdRankItem> adItemRank(RankRecommendRequestParam request, ScoreParam scoreParam) {
-        Set<String> noApiAdVerIds = adRedisHelper.sMembers(RedisPrefixEnum.ADVER_IS_API_EQ_0_IDS.getPrefix());
-        log.info("Redis中缓存的没有回传广告主ID集合: {}", noApiAdVerIds);
-        if (CollectionUtils.isEmpty(noApiAdVerIds)) {
-            noApiAdVerIds = noPostbackConversionAdVerIds;
-        }
+        Set<String> noApiAdVerIds = getNoApiAdVerIds();
 
         long ts = System.currentTimeMillis() / 1000;
 

+ 2 - 11
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/RankService687.java

@@ -1,7 +1,5 @@
 package com.tzld.piaoquan.ad.engine.service.score;
 
-import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
-import com.tzld.piaoquan.ad.engine.commons.enums.RedisPrefixEnum;
 import com.tzld.piaoquan.ad.engine.commons.score.ScoreParam;
 import com.tzld.piaoquan.ad.engine.commons.score.ScorerUtils;
 import com.tzld.piaoquan.ad.engine.commons.thread.ThreadPoolFactory;
@@ -11,7 +9,6 @@ import com.tzld.piaoquan.ad.engine.service.score.dto.AdPlatformCreativeDTO;
 import com.tzld.piaoquan.ad.engine.service.score.param.RankRecommendRequestParam;
 import com.tzld.piaoquan.recommend.feature.domain.ad.base.AdRankItem;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
@@ -32,9 +29,6 @@ import java.util.stream.Collectors;
 @Service
 public class RankService687 extends RankStrategyXGBBasic {
 
-    @ApolloJsonValue("${no.postback.conversion.adverids:[]}")
-    private Set<String> noPostbackConversionAdVerIds;
-
     private Map<String, double[]> bucketsMap = new HashMap<>();
 
     private Map<String, Double> bucketsLen = new HashMap<>();
@@ -44,11 +38,8 @@ public class RankService687 extends RankStrategyXGBBasic {
 
     @Override
     public List<AdRankItem> adItemRank(RankRecommendRequestParam request, ScoreParam scoreParam) {
-        Set<String> noApiAdVerIds = adRedisHelper.sMembers(RedisPrefixEnum.ADVER_IS_API_EQ_0_IDS.getPrefix());
-        log.info("Redis中缓存的没有回传广告主ID集合: {}", noApiAdVerIds);
-        if (CollectionUtils.isEmpty(noApiAdVerIds)) {
-            noApiAdVerIds = noPostbackConversionAdVerIds;
-        }
+        Set<String> noApiAdVerIds = getNoApiAdVerIds();
+
         long ts = System.currentTimeMillis() / 1000;
 
         String brand = scoreParam.getRequestContext().getMachineinfoBrand();

+ 1 - 10
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/RankStrategyXGBAutoUpdateModel688.java

@@ -1,7 +1,5 @@
 package com.tzld.piaoquan.ad.engine.service.score;
 
-import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
-import com.tzld.piaoquan.ad.engine.commons.enums.RedisPrefixEnum;
 import com.tzld.piaoquan.ad.engine.commons.score.ScoreParam;
 import com.tzld.piaoquan.ad.engine.commons.score.ScorerUtils;
 import com.tzld.piaoquan.ad.engine.commons.thread.ThreadPoolFactory;
@@ -11,7 +9,6 @@ import com.tzld.piaoquan.ad.engine.service.score.dto.AdPlatformCreativeDTO;
 import com.tzld.piaoquan.ad.engine.service.score.param.RankRecommendRequestParam;
 import com.tzld.piaoquan.recommend.feature.domain.ad.base.AdRankItem;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
@@ -32,8 +29,6 @@ import java.util.stream.Collectors;
 @Component
 public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
 
-    @ApolloJsonValue("${no.postback.conversion.adverids:[]}")
-    private Set<String> noPostbackConversionAdVerIds;
 
     private Map<String, double[]> bucketsMap = new HashMap<>();
 
@@ -45,11 +40,7 @@ public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
     @Override
     public List<AdRankItem> adItemRank(RankRecommendRequestParam request, ScoreParam scoreParam) {
 
-        Set<String> noApiAdVerIds = adRedisHelper.sMembers(RedisPrefixEnum.ADVER_IS_API_EQ_0_IDS.getPrefix());
-        log.info("Redis中缓存的没有回传广告主ID集合: {}", noApiAdVerIds);
-        if (CollectionUtils.isEmpty(noApiAdVerIds)) {
-            noApiAdVerIds = noPostbackConversionAdVerIds;
-        }
+        Set<String> noApiAdVerIds = getNoApiAdVerIds();
 
         long ts = System.currentTimeMillis() / 1000;
 

+ 20 - 0
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/RankStrategyXGBBasic.java

@@ -1,24 +1,35 @@
 package com.tzld.piaoquan.ad.engine.service.score;
 
+import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
+import com.tzld.piaoquan.ad.engine.commons.enums.RedisPrefixEnum;
 import com.tzld.piaoquan.ad.engine.commons.redis.AdRedisHelper;
 import com.tzld.piaoquan.ad.engine.commons.score.ScoreParam;
 import com.tzld.piaoquan.ad.engine.service.feature.Feature;
 import com.tzld.piaoquan.ad.engine.service.feature.FeatureService;
 import com.tzld.piaoquan.ad.engine.service.score.dto.AdPlatformCreativeDTO;
 import com.tzld.piaoquan.ad.engine.service.score.param.RankRecommendRequestParam;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
+import java.util.Set;
 import java.util.stream.Collectors;
 
+@Slf4j
 public abstract class RankStrategyXGBBasic implements RankStrategy {
 
+    @ApolloJsonValue("${no.postback.conversion.adverids:[]}")
+    private Set<String> noPostbackConversionAdVerIds;
+
+
     @Autowired
     private FeatureService featureService;
     @Autowired
     protected AdRedisHelper adRedisHelper;
 
+
     protected Feature getFeature(ScoreParam param, RankRecommendRequestParam request) {
         List<AdPlatformCreativeDTO> adIdList = request.getAdIdList();
         List<String> cidList = adIdList.stream()
@@ -34,6 +45,15 @@ public abstract class RankStrategyXGBBasic implements RankStrategy {
         return featureService.getFeature(cidList, adVerIdList, param);
     }
 
+    protected Set<String> getNoApiAdVerIds() {
+        Set<String> noApiAdVerIds = adRedisHelper.sMembers(RedisPrefixEnum.ADVER_IS_API_EQ_0_IDS.getPrefix());
+        log.info("Redis中缓存的没有回传广告主ID集合: {}", noApiAdVerIds);
+        if (CollectionUtils.isEmpty(noApiAdVerIds)) {
+            noApiAdVerIds = noPostbackConversionAdVerIds;
+        }
+        return noApiAdVerIds;
+    }
+
     protected static class Tuple5 {
         public String f1;
         public String f2;