[Feature] Redis 중복 발송 방지 구현 #108
Labels
No Label
Priority
High
Priority
Low
Priority
Medium
Priority
Non
Priority
Urgent
Status
Available
Status
Done
Status
In Progress
Type
Bug
Type
Chore
Type
Design
Type
Documentation
Type
Feature
Type
Improvement
Type
Refactor
Type
Research
Type
Task
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: SPMS/SPMS_API#108
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
설명
Redis를 사용하여 푸시 메시지 중복 발송을 방지하는 로직을 구현한다.
PushWorker가 메시지를 처리할 때, Redis의 SetNX를 사용하여
duplicate:{request_id}키가 이미 존재하면 중복으로 판단하고 스킵한다.체크리스트
Application Layer
SPMS.Application/Settings/RedisSettings.cs— Redis 설정 POCOSPMS.Application/Interfaces/IDuplicateChecker.cs— 중복 체크 인터페이스Infrastructure Layer
SPMS.Infrastructure/Caching/RedisConnection.cs— Redis 연결 관리 (ConnectionMultiplexer 싱글톤)SPMS.Infrastructure/Caching/DuplicateChecker.cs— 중복 체크 구현체duplicate:{request_id}설정
appsettings.jsonRedis 섹션 추가SPMS.Infrastructure/DependencyInjection.cs— DI 등록SPMS.Infrastructure/SPMS.Infrastructure.csproj— StackExchange.Redis 패키지 추가