서비스 거부(DoS, Denial-of-Service) 공격이란 특정한 네트워크나 웹 리소스에 합법적인 유저가 접근하지 못하도록 방해하는 것입니다. 전형적으로, 막대한 양의 트랙픽을 통해 특정 대상(흔히 웹 서버)에 과부하를 주거나, 악의적인 요청을 보내 해당 리소스가 오작동을 일으키게 하거나 완전히 정지시킵니다.
thunk는 매우 기본적인 미들웨어 기능을 제공해준다.
그러므로 thunk로 만들었을 경우, 실수로 로그인 버튼을 두번 클릭 하면 서버로 요청이 두번 다 간다.
스크롤 이벤트 같은 경우에도, 비동기 요청을 넣어놓으면 스크롤을 쫙 내렸을 때, 서버에 요청이 수백개가 갈 수 있다.
(서버요청 수백개 === 셀프 DoS 공격 ^^;;;;)
그러므로 이를 주의하며 코드를 짜는 것이 필요하다.
saga에서는 throttle 등을 미리 구현해 놓았으므로 복잡한 기능의 미들웨어가 필요할 땐 saga를 사용하는 것이 편하다.
delay 기능도 thunk는 직접 setTimeout을 사용해 구현해야하지만, saga에서는 제공하는 기능이다.
(사람들이 saga를 많이 쓰는 이유)
참고
- https://academy.binance.com/ko/articles/what-is-a-dos-attack
- 제로초 노드버드 강의
Redux :: 미들웨어_ redux-saga 이펙트 (0) | 2020.12.15 |
---|---|
Redux :: 미들웨어 _ next에서 redux-saga 사용하기 (0) | 2020.12.15 |
Redux :: 미들웨어_ Redux-thunk (0) | 2020.12.13 |
Redux :: 미들웨어 (0) | 2020.12.13 |
Redux :: 개발자용 미들웨어 사용하기 (redux-devtools-extension) (0) | 2020.12.13 |
댓글 영역