AWS Lambda 의 Go, Rust 런타임 환경을 분석한 글

https://zenn.dev/taiki45/articles/aws-lambda-with-go-and-rust


트위터에서 @taiki45 라는 이름으로 활동하고 있는 Taiki 님의 글을 가져왔어요.


AWS Lambda 서비스의 컨테이너 이미지를 사용한 배포방식과, 그 백엔드에 대해서 알아보고,

실제 Go, Rust Lambda Runtime API 가 어떻게 구성되어있는지 소스를 열어보면서, 그 구현에 대해 설명하는 글인데요.


먼저 유저들에게 노출되는 Lambda Service 와 실제 Lambda Funtion을 수행하는 Execution Environment 의 내부 구조와, Runtime API 라는 프로토콜에 대해 알아보구요.

(이 API 에 대한 설명은 https://docs.aws.amazon.com/lambda/latest/dg/runtimes-api.html 여기에 좀 더 자세히...)


Golang의 Lambda Function을 실행하기 위한 런타임 라이브러리 https://github.com/aws/aws-lambda-go 의 구조, Rust의 Lambda Function을 실행하기 위한 런타임 라이브러리 https://github.com/awslabs/aws-lambda-rust-runtime 의 구조를 하나씩 열어보면서


어떻게 사용자가 정의한 함수가 Lambda Runtime API 를 통해 실행되는지 (Golang의 경우에는 전달된 Lambda Event 데이터를 deserialize해서 이 데이터 구조체를 사용자 정의 함수의 파라미터로 넘기도록 reflect 패키지를 통해서 호출하는 형태) runtime 코드들을 단계별로 살펴보면서 자세히 설명하고 있어요.


Go, Rust를 사용한 AWS Lambda Function은 어떻게 실행되는지, 이벤트를 어떻게 전달받는지 그 배경이 궁금하신 분이 계시다면, 이 블로그글이 참고가 될 것 같아요. 일본어가 익숙하지 않은 분도 자동번역을 통해서도 꽤 읽기쉽게 번역이 되어서, 번역기를 통해 읽어보실 수 있어요!

完全理解: AWS Lambda with Go and Rust

Zenn

完全理解: AWS Lambda with Go and Rust

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 5월 25일 오후 1:30

 • 

저장 4조회 1,234

댓글 0