Commit d6033aee by liuyu

Merge branch 'feature' into 'release'

2024/12/02 定时清理ai标注缓存

See merge request !137
parents 9ab309c9 745c3764
package com.zhiwei.middleware.automatic.server.dao;
import org.springframework.data.mongodb.core.query.Query;
public interface AiApiResultDao {
void remove(Query query);
}
package com.zhiwei.middleware.automatic.server.dao.impl;
import com.zhiwei.middleware.automatic.server.dao.AiApiResultDao;
import com.zhiwei.middleware.automatic.server.pojo.AiApiResult;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
@Component
public class AiApiResultDaoImpl implements AiApiResultDao {
private final MongoTemplate mongoTemplate;
private static final String COLLECTION_NAME = "marker_ai_api_result";
public AiApiResultDaoImpl (@Qualifier("markerMongoTemplate") MongoTemplate mongoTemplate) {
this.mongoTemplate = mongoTemplate;
}
@Override
public void remove(Query query) {
mongoTemplate.remove(query, AiApiResult.class, COLLECTION_NAME);
}
}
package com.zhiwei.middleware.automatic.server.mission;
import com.zhiwei.middleware.automatic.server.common.GenericAttribute;
import com.zhiwei.middleware.automatic.server.dao.AiApiResultDao;
import com.zhiwei.middleware.automatic.server.dao.AiMarkCountDao;
import com.zhiwei.middleware.automatic.server.dao.AiMarkProjectCacheDao;
import com.zhiwei.middleware.automatic.server.pojo.AiMarkCount;
......@@ -11,6 +12,8 @@ import com.zhiwei.middleware.automatic.server.util.Tools;
import com.zhiwei.qbjc.bean.pojo.common.Project;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
import java.util.Calendar;
......@@ -28,6 +31,8 @@ public class AsyncTask {
private final AiMarkProjectCacheDao aiMarkProjectCacheDao;
private final AiApiResultDao aiApiResultDao;
public static Long DAY_START_TIME;
public static Long DAY_END_TIME;
......@@ -36,11 +41,12 @@ public class AsyncTask {
public AsyncTask(@Qualifier("hangzhouMongoTemplate") MongoTemplate hangZhouMongo,
AiMarkCountDao aiMarkCountDao, RedissonUtil redissonUtil,
AiMarkProjectCacheDao aiMarkProjectCacheDao) {
AiMarkProjectCacheDao aiMarkProjectCacheDao, AiApiResultDao aiApiResultDao) {
this.hangZhouMongo = hangZhouMongo;
this.aiMarkCountDao = aiMarkCountDao;
this.redissonUtil = redissonUtil;
this.aiMarkProjectCacheDao = aiMarkProjectCacheDao;
this.aiApiResultDao = aiApiResultDao;
}
public List<String> findAllGroup() {
......@@ -78,4 +84,8 @@ public class AsyncTask {
}
}
public void cleanAiResCache() {
aiApiResultDao.remove(new Query(Criteria.where("createAt").lt(System.currentTimeMillis() - ( GenericAttribute.DAY_TIME * 60))));
}
}
......@@ -18,7 +18,7 @@ public class CidRecordMission {
private static final String QUEUE_KEY = "cidRepeatQueue";
@Scheduled(cron = "0/1 * * * * ?")
@Scheduled(cron = "0/5 * * * * ?")
@Async("asyncExecutor")
public void pullData() {
try {
......
......@@ -100,6 +100,7 @@ public class ScheduledMission {
public void syncDayCount() {
try {
asyncTask.syncDayCount();
asyncTask.cleanAiResCache();
} catch (Exception e) {
log.error("ai标注每日统计失败:", e);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment