Starlette2 웹서버(Web server)와 웹애플리케이션(WAS) 요청바디(request body) overflow 공격은 어떻게 대응할까? (고찰 포스팅) 머리말최근 was 미들웨어 구간에 http request body 디버깅용 로깅을 구상하고 있었는데,생각해보니 http body는 사실상 데이터 크기의 제한을 두지 않는 것으로 알고 있는데, 이 데이터를 미들웨어에서 계속 로깅을 위해 열어보게되면.. 악의적인 공격에 메모리가 가득차버리는게 아닌지? 이를 해결하려면 어떻게 해야될지 궁금증이 들었다..ㅎㅎ! (갑작스러운 띠용~) 대부분의 운영용 웹서버(아파치, nginx, envoy ...)는 요청 Body 크기를 제한하는 옵션을 갖고 있다.이런 운영용 웹서버를 띄우는 컴퓨팅 리소스는 웹서버 트래픽 워크로드만 고려하기 때문에 웬만한 데이터량은 어차피 아주 잘 처리할 것이다. 문제는 이런 전용 웹서버들은 아주 잘 처리하지만, 비즈니스로직을 처리해야되는 WA.. 2025. 5. 7. [Fast API][Starlette] keepalive request(요청) 지연 현상 / background tasks / slow request Fast API는 python3 ASGI WAS 프레임워크입니다.흔히 웹서버로 uvicorn을 사용하고있습니다. 이번 포스팅은 client > 리버스 proxy(i.g. nginx) > uvicorn > Fast API 통신과정에서 uvicorn까지 트래픽이 들어왔지만 Fast API의 미들웨어에 인입 로그도 찍히지 않고 request가 지연되는 현상에 대한 트러블슈팅입니다. 이슈 확인1. background task 기능을 포함한 API를 호출후, 다음 API 요청이 간헐적으로 매우 느림(오지 않음)2. Fast API의 미들웨어 로그상 아무런 요청/인입이 없음3. background task가 완료되면 요청이 들어옴 원인1. Keep-alive 유지매번 발생하는 이슈가 아니여서 원인을 찾는게 쉽.. 2023. 7. 17. 이전 1 다음