IT 엔지니어

동시 요청이 모듈 스코프의 사용자 값을 공유할 때

09월 17일 | 조회수 27
1
1435

A 요청이 사용자 값을 저장한 직후 B 요청이 같은 변수를 덮어쓸 수 있습니다. 서버 모듈은 요청마다 새로 만들어지는 지역 저장소가 아닙니다. 같은 프로세스의 요청은 변경 가능한 모듈 변수를 함께 씁니다. B가 덮어쓴 뒤 A가 다시 읽으면 다른 사용자의 정보가 섞일 수 있습니다. 트래픽이 겹칠 때만 나타나 원인을 찾기도 어렵습니다. 사용자별 값은 요청 함수의 지역 변수에 두고 필요한 하위 컴포넌트에 props로 전달합니다. Server Component에서 같은 함수를 같은 인자로 반복 호출한다면 React의 cache로 중복 작업을 줄일 수 있습니다. 이 캐시는 서버 요청마다 무효화됩니다. 모듈 스코프에는 정적 설정과 정적 자산을 남기세요. 공유 캐시가 필요하다면 사용자별로 캐시 키를 나누고 TTL과 접근 범위를 명확히 해야 합니다. 영상의 A와 B 흐름처럼 현재 서버 코드에서도 요청이 겹칠 수 있는 지점을 확인해 보세요.

첨부 이미지
댓글 0
공감순
최신순
      등록된 댓글이 없습니다
      첫 댓글을 남겨주세요
추천글
대표전화 : 02-556-4202
06235 서울시 강남구 테헤란로 134, 5,6,9층
(역삼동, 포스코타워 역삼) (대표자:최재호, 송기홍)
사업자등록번호 : 211-88-81111
통신판매업 신고번호: 2016-서울강남-03104호
| 직업정보제공사업 신고번호: 서울강남 제2019-11호
| 유료직업소개사업 신고번호: 2020-3220237-14-5-00003
| 국외 유료직업소개사업 신고번호: F1200020240004
Copyright Remember & Company All rights reserved.