본문 바로가기
CICD/AWS

[AWS] 트러블 슈팅 API Gateway + Lambda 했는데 502 에러 ??? feat) 시간초과

by windy7271 2025. 2. 7.
728x90
반응형

502 에러가 나는 이유중에 하나가 시간초과가 있습니다.

 

cloudwatch 를 확인하면 29.x 초 아니면 30.x초에 끝나거든요 . 

 

그럼 Lambda설정에서 시간을 늘려줍니다.

 

 

기본은 30초, 15분 까지 늘릴 수 있습니다.

 

근데 api가 api gateway왔다가 람다를 오기 때문에 람다에서15분을 해도 apigateway 에서 뻑이나면 실패해요 

apigateway는 29초가 최대 입니다.

 

그래서 저 처럼 하나의 api가 시간이 많이 걸리는 경우에는 다른 방안을 생각해야합니다.

 

1. SQS + Lambda 

SQS 도 람다로 발생시켜 SQS에 담아 놓는겁니다. 이것은 잊어먹지 않거든요 하지만 비용이 좀 들겁니다.

 

2. API Gateway 떼고 ELB 로 변경

 

저는 ELB로 했습니다.

 

아키텍쳐로 보면 아래와 같이 되는것이지요 .

 

일단 alb의 다른게 설정이 되어있고, 람다도 배포 완료했으면

 

타켓그룹을 1개 더 설정해줘야합니다. 람다를 추가해줘야하니깐요

 

  • ec2 -> 로드밸런서 -> 대상그룹 -> 대상그룹 생성 

다음

 

여기에 람다함수가 나와야합니다. 그리고 생성해줍니다.

 

2. 로드 밸런서에서 타켓그룹을 설정해줍니다.

  • 로드밸런서 -> 있는 로드밸런서 선택 -> Https 443 선택

규칙추가

 

 

이렇게 하고 뒤에 우선순위 (저는 1위 줌) 하고 생성해주면 됩니다.

 

그러면 결과적으로

 

이런식으로 나오게 됩니다.

 

이렇게 하면 오래 걸리는 것도 해결이 가능합니다. 또 이렇게 해서 안된다면

 

alb 에서 timeout 설정 바꾸는게 있어서 그것을 설정해 주시면 됩니다.

 

alb 선택 -> 속성 -> 연결유후제한 시간 이것을 건드려주면 됩니다.

반응형

댓글