AWS 람다
AWS Lambda![]() |
![]() | |
개발자 | 아마존 닷컴. |
---|---|
초기 릴리즈 | 2014년 | , 전(
운영 체제 | 크로스 플랫폼 |
이용가능기간: | 영어 |
웹 사이트 | aws![]() |
AWS Lambda는 Amazon Web Services의 일부로 Amazon에서 제공하는 이벤트 기반 서버리스 컴퓨팅 플랫폼입니다.이벤트에 따라 코드를 실행하고 해당 코드에 필요한 컴퓨팅 리소스를 자동으로 관리하는 컴퓨팅 서비스입니다.2014년 [1]11월에 도입되었습니다.
Node.js, Python, Java, Go,[2] [3]Ruby 및 C#(~)입니다.NET)는 2018년 현재[update] 모두 공식적으로 지원됩니다.2018년 말, 맞춤형 런타임 지원이[4] AWS Lambda에 추가되었습니다.
AWS Lambda는 Node.js와 [5]같은 지원되는 런타임에서 호출하여 네이티브 Linux 실행 파일을 실행할 수 있도록 지원합니다.예를 들어 Haskell 코드는 람다에서 실행할 [6]수 있습니다.
AWS Lambda는 이미지 또는 객체 업로드, DynamoDB 테이블 업데이트, 웹 사이트 클릭에 대한 응답 또는 IoT 연결 장치의 센서 판독값에 대한 반응과 같은 사용 사례를 위해 설계되었습니다.또한 AWS Lambda를 사용하여 사용자 지정 HTTP 요청에 의해 트리거된 백엔드 서비스를 자동으로 프로비저닝하고 사용하지 않을 때 이러한 서비스를 "스핀다운"하여 리소스를 절약할 수 있습니다.이러한 커스텀 HTTP 요청은 AWS API 게이트웨이에서 구성되며, AWS Cognito와 연계하여 인증 및 인증을 처리할 수도 있습니다.
AWS Lambda는 1시간 단위로 가격이 매겨지지만 2초 단위로 측정되는 Amazon EC2와 달리 최소 실행 시간 없이 밀리초 단위로 반올림하여 측정됩니다.
2019년 AWS의 연례 클라우드 컴퓨팅 컨퍼런스(AWS re:발명)은 "기능을 초기화하고 두 자리 밀리초 [7]이내에 응답할 수 있도록 하이퍼 준비" 기능인 "프로비저닝된 동시성"을 발표했습니다.Lambda 팀은 Provisioned Concurency를 "웹 및 모바일 백엔드, 지연에 민감한 마이크로 서비스 또는 동기 API와 [8]같은 대화형 서비스를 구현하는 데 이상적"이라고 설명했습니다.
사양
각 AWS Lambda 인스턴스는 Amazon Linux AMI(RHEL과 관련된 Linux 배포)에서 생성된 컨테이너로, RAM(1MB 단위로 증가),[9] /tmp [10]폴더에 512MB에서 10GB의 사용 후 삭제 스토리지 및 구성 가능한 실행 시간을 1~900초로 지정합니다.사용 후 삭제 스토리지는 인스턴스가 실행되는 동안에만 로컬에서 사용 가능한 상태로 유지되며 인스턴스에서 실행 중인 모든 작업이 완료된 후 삭제됩니다.
인스턴스는 직접 시작하지도 제어하지도 않습니다.대신 필요한 작업을 포함하는 패키지를 생성하여 S3 버킷에 업로드해야 하며(일반적으로), 이벤트가 트리거될 때 AWS가 Amazon Kinesis, DynamoDB 또는 SQS를 통해 실행하도록 지시됩니다.이러한 각 실행은 새로운 환경에서 실행되므로 이전 및 후속 실행의 실행 컨텍스트에 액세스할 수 없습니다.이로 인해 인스턴스는 기본적으로 상태 비저장 상태가 되고 모든 착신 및 발신 데이터는 외부 수단으로 저장해야 합니다(보통 S3 또는 DynamoDB를 통해 인스턴스에 대한 인바운드 연결이 비활성화됩니다).Lambda 패키지의 최대 압축 크기는 50MB이고 최대 압축되지 않은 크기는 250MB입니다.
2020년 12월부터 Lambda는 최대 10GB 크기의 [11]ECR을 통해 Docker 용기를 지원합니다.
「 」를 참조해 주세요.
- 이벤트 지향 아키텍처
- 서버리스 프레임워크
- 서버리스 컴퓨팅
- 서비스로서의 기능
- Amazon Lambda라는 이름을 가진 정체성에 얽매이지 않는 익명 컴퓨팅 함수의 개념인 람다 함수
- 오라클 클라우드 플랫폼
- Google 클라우드 기능
- Azure 함수
레퍼런스
- ^ Handy, Alex (November 14, 2014). "Amazon introduces Lambda, Containers at AWS re:Invent". SD Times. Retrieved December 10, 2019.
- ^ Munns, Chris (January 15, 2018). "Announcing Go Support for AWS Lambda". Amazon Web Services. Retrieved December 10, 2019.
- ^ Munns, Chris (November 29, 2018). "Announcing Ruby Support for AWS Lambda". Amazon Web Services. Retrieved December 10, 2019.
- ^ "AWS Lambda Now Supports Custom Runtimes and Enables Sharing Common Code Between Functions". Amazon Web Services. November 29, 2018. Retrieved December 10, 2019.
- ^ Wagner, Tim (April 15, 2015). "Running Arbitrary Executables in AWS Lambda". AWS Compute Blog. Retrieved December 10, 2019.
- ^ Bailly, Arnaud. "abailly/aws-lambda-haskell: Running Haskell code on AWS Lambda". GitHub. Retrieved December 10, 2019.
- ^ "New – Provisioned Concurrency for Lambda Functions". aws.amazon.com. 3 December 2019. Retrieved 2020-10-12.
- ^ "New – Provisioned Concurrency for Lambda Functions". Amazon Web Services. 2019-12-03. Retrieved 2020-02-03.
- ^ "AWS Lambda now supports up to 10 GB of memory and 6 vCPU cores for Lambda Functions". About AWS. December 1, 2021. Retrieved January 29, 2021.
- ^ Yun, Channy. "AWS Lambda Now Supports Up to 10 GB Ephemeral Storage". AWS News Blog. Retrieved 1 April 2022.
- ^ "New for AWS Lambda – Container Image Support". Amazon Web Services. 2020-12-01. Retrieved 2021-06-03.