hoseungme / blog.hoseung.me

Tech blog
https://blog.hoseung.me
7 stars 0 forks source link

2022-02-27-lambda-global-variables/ #2

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

AWS Lambda의 동작 원리 - 전역 변수가 유지될까? | blog.hoseung.me

간단한 질문으로부터 시작된 AWS Lambda 파헤치기

https://blog.hoseung.me/2022-02-27-lambda-global-variables/

jongwooo commented 2 years ago

좋은 글 감사합니다🙂👍

hamahamak commented 2 years ago

람다의 동작 원리에 대해 궁금 했었는데 정리 할 수 있는 글 이였습니다. Apache Bench를 통한 테스트에서 실험 결과에 대해 질문 드립니다. 100개를 동시에 20개씩 요청 보냈다는 것은 20 > 20 > 20 > 20 > 20 총 다섯번 요청을 보냈다는 뜻 같습니다. 작성 해주신 글을 기반으로 실험 결과를 예측 하자면 처음 20개의 요청은 거의 대부분 콜드 스타트로 시작 되고 그 다음의 20개의 요청들은 대부분(?) 웜 스타트로 시작 될 것 이라고 생각이 듭니다. 실험 결과가 이와 같을 까요??

hoseungme commented 2 years ago

람다의 동작 원리에 대해 궁금 했었는데 정리 할 수 있는 글 이였습니다. Apache Bench를 통한 테스트에서 실험 결과에 대해 질문 드립니다. 100개를 동시에 20개씩 요청 보냈다는 것은 20 > 20 > 20 > 20 > 20 총 다섯번 요청을 보냈다는 뜻 같습니다. 작성 해주신 글을 기반으로 실험 결과를 예측 하자면 처음 20개의 요청은 거의 대부분 콜드 스타트로 시작 되고 그 다음의 20개의 요청들은 대부분(?) 웜 스타트로 시작 될 것 이라고 생각이 듭니다. 실험 결과가 이와 같을 까요??

안녕하세요:) @hamahamak

우선 제가 Apache Bench를 사용해서 했던 실험의 의도는 어떠한 정확한 수치를 계산하려고 했던 것이 아니었고, 일정 수준의 동시 트래픽이 가해졌을 때, 공식 문서에서 설명된 내용대로 동시에 들어간 요청들이 cold start를 겪는지만 대략적으로 확인해보기 위한 실험이었어요.

그런 관점에서 보자면, 말씀하신 부분이 맞다고 생각합니다. 실제로 제가 올린 스크린샷을 보시면, cold start를 거친 요청을 제외한 나머지는 process time이 0으로 찍혔을 만큼 빠르게 처리됬기 때문에, 후속 요청들의 대부분은 cold start를 거치지 않고, 대기 중이던 execution environment가 재활용됬을 거에요.