

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# aws-sqs-lambda
<a name="aws-sqs-lambda"></a>

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


 Todas las clases están en desarrollo activo y están sujetas a cambios o eliminación no compatibles con versiones anteriores en cualquier versión futura. Estos no están sujetos a la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**Nota:** Para garantizar una funcionalidad adecuada, los paquetes de AWS Solutions Constructs y los paquetes CDK de AWS del proyecto deben tener la misma versión. 


|  **Idioma**  |  **Paquete**  | 
| --- | --- | 
|  ![](https://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\_solutions\_constructs.aws\_sqs\_lambda  | 
|  ![](https://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-sqs-lambda  | 
|  ![](https://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.sqslambda  | 

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

 Este constructo de soluciones de AWS implementa una cola de Amazon SQS conectada a una función de AWS Lambda. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
const { SqsToLambda } = require('@aws-solutions-constructs/aws-sqs-lambda');

new SqsToLambda(stack, 'SqsToLambdaPattern', {
    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-24"></a>

```
new SqsToLambda(scope: Construct, id: string, props: SqsToLambdaProps);
```

 *Parámetros* 
+  scope[`Construct`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`SqsToLambdaProps`](#pattern-construct-props-24) 

## Patrón de construcción
<a name="pattern-construct-props-24"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [`lambda.Function`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ExistingQueueObj?  |  [`sqs.Queue`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [`sqs.QueueProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Se pasa por alto si unexistingQueueObjse encuentra.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se crea una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [`sqs.QueueProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuese establece en verdadero.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 

## Propiedades de patrón
<a name="pattern-properties-24"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DeadLetterQueue?  |  [`sqs.Queue`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  LambdaFunction  |  [`lambda.Function`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  SQSqueue  |  [`sqs.Queue`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-24"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Cola de Amazon SQS
<a name="amazon-sqs-queue-1"></a>
+  Implemente la cola de mensajes fallidos de SQS para la cola de SQS de origen. 
+  Habilite el cifrado en el lado de servidor para la cola de SQS de origen mediante la clave KMS administrada de AWS. 
+  Cumplir el cifrado de los datos en tránsito. 

### Función de AWS Lambda
<a name="aws-lambda-function-15"></a>
+  Configurar el rol de IAM de acceso limitado con privilegios para la función Lambda. 
+  Habilite la reutilización de conexiones con la función Keep-Alive para NodeJS Lambda. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

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

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


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


<table>
<thead>
  <tr><th colspan="2"> <b>Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:</b> </th></tr>
</thead>
<tbody>
  <tr><td> <img src="https://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png" alt="" /> </td><td> <a href="https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-sqs-lambda">@aws -soluciones-constructs/aws-sqs-lambda</a> </td></tr>
</tbody>
</table>
