diff --git a/src/main/java/com/haru/api/infra/redis/RedisReportConsumer.java b/src/main/java/com/haru/api/infra/redis/RedisReportConsumer.java index 7d3c2630..fb6fee06 100644 --- a/src/main/java/com/haru/api/infra/redis/RedisReportConsumer.java +++ b/src/main/java/com/haru/api/infra/redis/RedisReportConsumer.java @@ -24,7 +24,6 @@ public class RedisReportConsumer { private String QUEUE_KEY; private static final long BATCH_SIZE = 20; - @Transactional @Scheduled(cron = "0 0/5 * * * *") // 정각부터 5분 마다 실행 public void pollQueueEvery30Minutes() { long now = Instant.now().getEpochSecond(); @@ -37,7 +36,7 @@ public void pollQueueEvery30Minutes() { for (String id : dueIds) { // Worker Queue로 push - redisTemplate.opsForList().leftPush("report-worker-queue", id); + redisTemplate.opsForList().leftPush("REPORT_WORKER_QUEUE", id); // ZSET에서는 제거 redisTemplate.opsForZSet().remove(QUEUE_KEY, id); } diff --git a/src/main/java/com/haru/api/infra/redis/ReportWorker.java b/src/main/java/com/haru/api/infra/redis/ReportWorker.java index b20e5bf1..e79ca00f 100644 --- a/src/main/java/com/haru/api/infra/redis/ReportWorker.java +++ b/src/main/java/com/haru/api/infra/redis/ReportWorker.java @@ -19,7 +19,7 @@ public class ReportWorker { private final MoodTrackerReportService reportService; private final ExecutorService executor = Executors.newFixedThreadPool(5); // 5개 병렬 Worker - private static final String WORKER_QUEUE = "report-worker-queue"; + private static final String WORKER_QUEUE = "REPORT_WORKER_QUEUE"; @Scheduled(fixedDelay = 2000) // 2초마다 큐 확인 public void consumeTasks() { @@ -44,7 +44,7 @@ private void process(Long moodTrackerId) { redisTemplate.opsForList().leftPush(WORKER_QUEUE, moodTrackerId.toString()); } else { log.error("재시도 한계 초과, 실패 큐로 이동: {}", moodTrackerId); - redisTemplate.opsForList().leftPush("report-failed-queue", moodTrackerId.toString()); + redisTemplate.opsForList().leftPush("REPORT_FAILED_QUEUE", moodTrackerId.toString()); } } }