[Frontend 기술면접 top30] 쓰로틀링과 디바운싱의 개념과 사용하는 이유에 대해서 설명해주세요.

Carrie·2023년 8월 31일
0

Frontend 기술면접 top30

목록 보기
14/16
post-custom-banner

쓰로틀링 (Throttling)

쓰로틀링은 일정한 시간 간격으로 이벤트나 함수를 실행하도록 제한하는 기술입니다. 예를 들면, 사용자가 스크롤을 빠르게 할 때, 스크롤마다 데이터를 불러오는 것은 비효율적입니다. 따라서 100ms나 200ms 간격으로 한 번씩만 데이터를 불러오게 할 수 있습니다.

디바운싱 (Debouncing)

디바운싱은 일정 시간 동안의 중복 호출을 방지하기 위해 설정된 딜레이 시간 이후에 마지막으로 요청된 작업만을 수행하는 기술입니다. 예를 들면, 사용자가 검색창에 텍스트를 입력할 때마다 검색 결과를 가져오는 것은 서버에 불필요한 부하를 주기 때문에, 사용자가 텍스트 입력을 중지하고 일정 시간동안 아무런 입력이 없을 때만 검색 결과를 가져오도록 할 수 있습니다.

사용하는 이유

쓰로틀링과 디바운싱은 둘 다 빈번한 이벤트나 함수 호출을 제한하기 위한 기술입니다. 불필요한 API 요청을 줄여 서버에 주는 부하를 감소시킬 수 있습니다. 빠르게 반복되는 이벤트 처리가 줄어들면, 웹사이트의 반응성이 더 좋아져 사용자 경험이 개선됩니다.

profile
Markup Developer🧑‍💻
post-custom-banner

0개의 댓글