

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 람다 스퀘어
<a name="aws-lambda-sqs"></a>

![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/experimental.png)


 모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다[의미 체계 버전 관리](https://semver.org/)모델을 선택합니다. 즉, 이 패키지를 사용할 수도 있지만 이 패키지의 최신 버전으로 업그레이드할 때 소스 코드를 업데이트해야 할 수도 있습니다.

**참고:** 적절한 기능을 보장하려면 프로젝트의 AWS 솔루션 구성 패키지와 AWS CDK 패키지가 동일한 버전이어야 합니다.


|  **언어**  |  **패키지**  | 
| --- | --- | 
|  ![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/python.png) Python  |  aws\_solutions\_constructs.aws\_lambda\_sqs  | 
|  ![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/typescript.png) 타이프 스크립트  |  @aws-solutions-constructs/aws-lambda-sqs  | 
|  ![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasqs  | 

## Overview
<a name="overview-25"></a>

 이 AWS 솔루션 구성은 Amazon SQS 대기열에 연결된 AWS Lambda 함수를 구현합니다.

 다음은 TypeScript 터의 최소 배포 가능한 패턴 정의입니다.

```
 import { LambdaToSqs, LambdaToSqsProps } from "@aws-solutions-constructs/aws-lambda-sqs";

 new LambdaToSqs(this, 'LambdaToSqsPattern', {
    lambdaFunctionProps: {
        runtime: lambda.Runtime.NODEJS_14_X,
        // This assumes a handler function in lib/lambda/index.js
        code: lambda.Code.fromAsset(`${__dirname}/lambda`),
        handler: 'index.handler'
    }
 });
```

## Initializer
<a name="initializer-25"></a>

```
 new LambdaToSqs(scope: Construct, id: string, props: LambdaToSqsProps);
```

 *파라미터* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSqsProps`](#pattern-construct-props-25) 

## 패턴 구성
<a name="pattern-construct-props-25"></a>


|  **이름**  |  **유형**  |  **설명**  | 
| --- | --- | --- | 
|  람다오브 기존인가요? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  기본 함수 대신 사용할 선택적 기존 Lambda 함수입니다. 이 두 가지를 모두 제공lambdaFunctionProps를 사용하면 오류가 발생할 수 있습니다. | 
|  람다기능소품? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Lambda 함수의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다. | 
|  대기열에 있는 Obj? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  기본 대기열 대신 사용할 기존 SQS 대기열 선택 사항입니다. 이 두 가지를 모두 제공queueProps를 사용하면 오류가 발생할 수 있습니다. | 
|  대기열 소품? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  SQS 대기열의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다. | 
|  대기열 제거를 활성화하시겠습니까? |  boolean  |  SQS 대기열을 비울 수 있도록 Lambda 함수에 추가 권한을 부여할지 여부 기본값은 false입니다. | 
|  배포데드 레터 큐? |  boolean  |  배달 못한 편지 대기열로 사용될 보조 대기열을 생성할지 여부. 기본값은 true입니다. | 
|  데드레터 대기열Props? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  데드 레터 큐의 기본 소품을 재정의하는 선택적 사용자 제공 소품. 이 경우에만 사용됩니다.deployDeadLetterQueue속성이 true로 설정됩니다. | 
|  maxReceiveCount? |  number  |  배달 못한 편지 대기열로 이동되기 전에 메시지가 대기열에서 성공적으로 대기열에서 뺄 수 있는 횟수입니다. 기본값은 15입니다. | 
|  기존VPC? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  이 패턴을 배포해야 하는 선택 사항인 기존 VPC 입니다. VPC PC에 배포되면 Lambda 함수는 VPC의 ENI를 사용하여 네트워크 리소스에 액세스하고 인터페이스 엔드포인트는 Amazon SQS 용 VPC에 생성됩니다. 기존 VPC 가 제공되면deployVpc속성일 수 없습니다.true. 한ec2.IVpc는 클라이언트가 스택 외부에 있는 VPC를[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)메서드를 호출합니다. | 
|  VPC를 배포하시겠습니까? |  boolean  |  를 기반으로 새 VPC 생성할지 여부vpcProps이 패턴을 배포 할 수 있습니다. 이 설정을 로 설정합니다.true는 패턴을 실행하기 위해 최소한의 대부분의 프라이빗 VPC 배포합니다.[See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/aws-lambda-sqs.html) 이 속성이true을 선택한 다음existingVpc를 지정할 수 없습니다. 기본값은 false입니다. | 
|  vPCProps? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  새 VPC 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다.enableDnsHostnames,enableDnsSupport,natGateways, 및subnetConfiguration는 패턴에 의해 설정되므로 여기에 제공된 속성의 모든 값이 재정의됩니다. 다음의 경우,deployVpc가 아닙니다.true, 다음이 속성은 무시됩니다. | 
|  대기열 환경변수 이름? |  string  |  Lambda 함수에 대한 SQS 대기열 URL 환경 변수 세트의 선택적 이름입니다. | 

## 패턴 속성
<a name="pattern-properties-25"></a>


|  **이름**  |  **유형**  |  **설명**  | 
| --- | --- | --- | 
|  데드 레터 큐? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  패턴에 의해 생성 된 데드 레터 큐의 인스턴스를 돌려줍니다 (배포 된 경우). | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  패턴에 의해 생성 된 Lambda 함수의 인스턴스를 돌려줍니다. | 
|  SQqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  패턴에 의해 생성된 SQS 대기열의 인스턴스를 반환합니다. | 
|  VPC? |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  패턴에 의해 생성되거나 사용된 VPC 인스턴스 (있는 경우) 를 반환합니다. 패턴에 의해 생성된 VPC 또는 패턴 생성자에 제공된 VPC일 수 있습니다. | 

## 기본 설정
<a name="default-settings-25"></a>

 재정의가없는 구성의 기본 구현은 다음 기본값을 설정합니다.

### AWS Lambda 함수
<a name="aws-lambda-function-25"></a>
+  Lambda 함수에 대한 제한된 권한 액세스 IAM 역할을 구성합니다.
+  NodeJS Lambda 함수에 대한 연결 유지와 연결을 재사용 할 수 있습니다.
+  함수에서 대기열에만 메시지를 보낼 수 있습니다 (제거는`enableQueuePurge`속성입니다).
+  X-Ray 추적 활성화
+  환경 변수를 설정합니다.
  +  `SQS_QUEUE_URL`
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(노드 10.x 이상 함수의 경우)

### Amazon SQS 대기열
<a name="amazon-sqs-queue-25"></a>
+  소스 SQS 대기열에 대한 SQS 배달 못한 편지 대기열을 배포합니다.
+  AWS 관리형 KMS 키를 사용하여 소스 SQS 대기열에 대한 서버 측 암호화를 활성화합니다.
+  전송 중인 데이터의 암호화를 적용합니다.

## Architecture
<a name="architecture-25"></a>

![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/aws-lambda-sqs.png)


## GitHub
<a name="github-25"></a>


<table>
<thead>
  <tr><th colspan="2"> 이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다. </th></tr>
</thead>
<tbody>
  <tr><td> ![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/GitHub-Mark-32px.png) </td><td> [@aws -솔루션 - 구성/aws - 람다 - sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sqs) </td></tr>
</tbody>
</table>
