내일배움캠프

200907 디바운싱과 쓰로틀링

Neda 2023. 9. 7. 20:20

200907 디바운싱과 쓰로틀링

디바운싱(Debouncing)과 쓰로틀링(Throttling)은 반복적인 이벤트를 효율적으로 처리하기 위한 방법이다.

 

디바운싱

디바운싱은 연속적으로 발생한 이벤트에서 마지막 이벤트만 처리하는 방식이다.

검색 기능에서 문자를 입력할 때마다 검색 api를 호출하면 매우 비효율적일 것이다.

이때 디바운싱을 통해 입력이 다 끝난 후에 검색 api가 호출되도록 하여 불필요한 api 호출을 줄일 수 있다

 

쓰로틀링

쓰로틀링은 이벤트가 지속적으로 발생할 때 이벤트의 발생 빈도를 줄이기 위해 사용하는 방식이다

스크롤이나 리사이즈와 같은 이벤트는 짧은 시간 내에 많은 이벤트가 반복 발생할 수 있다. 이때 모든 이벤트에 대해 함수 또는 연산을 처리하면 비효율적이고 연산이 무거우면 성능 저하가 발생할 수 도 있다.

이때 쓰로틀링을 통해 이벤트의 발생 주기를 제한하여 최적화를 수행할 수 있다.