|
@@ -1,6 +1,8 @@
|
|
|
package com.tzld.longarticle.recommend.server.service.recommend.score.strategy;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
|
|
|
+import com.tzld.longarticle.recommend.server.common.ApolloConfigModifier;
|
|
|
import com.tzld.longarticle.recommend.server.model.dto.kimi.KimiResult;
|
|
|
import com.tzld.longarticle.recommend.server.remote.KimiApiService;
|
|
|
import com.tzld.longarticle.recommend.server.remote.NLPRemoteService;
|
|
@@ -47,6 +49,9 @@ public class SimilarityStrategy implements ScoreStrategy {
|
|
|
@ApolloJsonValue("${similarityTypeAccountMap:}")
|
|
|
private Map<String, List<String>> similarityTypeAccountMap;
|
|
|
|
|
|
+ @Value("${spring.profiles.active:prod}")
|
|
|
+ private String env;
|
|
|
+
|
|
|
@Override
|
|
|
public List<Score> score(ScoreParam param) {
|
|
|
long start = System.currentTimeMillis();
|
|
@@ -79,6 +84,14 @@ public class SimilarityStrategy implements ScoreStrategy {
|
|
|
List<String> ghIds = similarityTypeAccountMap.get(type);
|
|
|
if (CollectionUtils.isNotEmpty(ghIds)) {
|
|
|
ghId = ghIds.get(RandomUtils.nextInt(0, ghIds.size()));
|
|
|
+ try {
|
|
|
+ Map<String, String> value = accountSimScoreReplaceMap;
|
|
|
+ value.put(param.getGhId(), ghId);
|
|
|
+ ApolloConfigModifier.modifyConfig("account.score.sim.replace", JSONObject.toJSONString(value), env.toUpperCase());
|
|
|
+ log.info("SimilarityStrategy 更新apollo配置 account.score.sim.replace 成功 {}:{}", param.getGhId(), ghId);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("SimilarityStrategy 更新apollo配置失败", e);
|
|
|
+ }
|
|
|
}
|
|
|
log.info("SimilarityStrategy 排序账号:{} 替换账号:{}", param.getGhId(), ghId);
|
|
|
}
|