네트워크 왕복을 줄여 성능 개선 (Redis / Lua Script)
·
DB
(대규모 대기열 접속 시스템에서 최소의 자원으로 최대의 효율을 내기 위한 방법을 공부하던 중 기록하게 되었습니다.) Redis의 기본 방식에서는 여러 개의 명령어 실행 시 네트워크 왕복 비용이 증가한다.LUA 스크립트는 Redis 서버 내부에서 실행되므로, 네트워크 왕복을 줄이고 성능을 향상.캐싱된 LUA 스크립트를 EVALSHA로 실행하면 추가적인 성능 최적화 가능.LUA 스크립트로 변환해야 할 주요 메서드대기열 등록 (registerWaitQueue)→ ZADD를 사용하여 사용자 추가 (이미 존재하는 경우 추가 방지)사용자 입장 허용 (allowUser)→ ZPOPMIN으로 대기열에서 사용자 추출 후 진행 목록에 추가→ TTL 설정 추가 (EXPIRE)즉, 반복되는 작업을 레디스 내에서 동작하도록 하..