Tech News

제목AWS Lambda 런타임별 Cold/Warm 시작 시간 비교 2021/092021-10-14 09:40
작성자 Level 10

https://filia-aleks.medium.com/aws-lambda-battle-2021-performance-comparison-for-all-languages-c1b441005fd1 

- API-Gateway → AWS Lambda → DynamoDB 플로우로 POST 메소드를 테스트

- 메모리 128/256/512/1024/10240MB 각각 테스트

- Cold Start

ㅤ→ 전체적으로 Rust가 가장 빠름. 128Mb에서만 Python이 1등

ㅤ→ Java 와 .NET을 제외하고는 대부분 빠름

ㅤ→ Java는 128Mb로는 시작도 불가능이지만, GraalVM은 가능

- Warm Start

ㅤ→ Golang 과 Rust 가 승리자

ㅤ→ .Net도 Go/Rust와 거의 비슷한 성능을 보여주지만, 1k 반복실행 후에만 가능(JIT 이후)

ㅤ→ GraalVM도 .Net과 비슷한 안정적인 성능을 보여주고, Rust/Go 보다는 약간 느림. 최소 셋업에서는 잘 동작하지 않음

ㅤ→ Java가 GraalVM 바로 뒤. Java 역시 .Net처럼 1~3k 반복후에만 성능이 나옴

ㅤ→ Python이 안정적인 좋은 성능을 보이지만, 128MB에서는 너무 느림

ㅤ→ Ruby 는 Python과 비슷한 성능을 보이지만, 20분 정도(15k 반복)후에는 약간의 지속시간(duration)이 증가함

ㅤ→ Node.js 가 가장 느린 런타임. 지속시간도 가장 김


- Cold + Warm 으로 보면 Golang 과 Rust가 승리자. 항상 빠르고 안정적인 결과를 보여줌


- 비교 런타임 : NodeJs(14.x), Python(3.9), Go(1.x), Ruby(2.7), .Net(3.1), Java (11), Rust(1.54.0), GraalVM(21.2)

댓글
자동등록방지
(자동등록방지 숫자를 입력해 주세요)