¿Qué es Lambda de Amazon Web Services?
AWS Lambda es un servicio en la nube en el que podemos subir un código que será ejecutado en nuestro nombre en la infraestructura de Amazon Web Services pudiendo crear tus propios servicios de back-end que administren la seguridad, desempeño y escalabilidad de AWS sin que sea necesario una configuración adicional, esto se traduce inclusive en un mayor ahorro en el consumo de esta infraestructura en la nube.
Todos los códigos ejecutados en Lambda Amazon Web Services se les conoce como función Lambda y están listos para cuando se requiera, en términos sencillos son como fórmulas de Excel que están predeterminadas.
Lo más usual que es que las funciones Lambda se usen en respuesta a varios eventos, como por ejemplo:
la modificación de objetos en buckets de Amazon S3 o la actualización de tablas en Amazon DynamoDB.
Lambda ejecuta el código en una infraestructura informática de alta disponibilidad y ejecuta la administración integral de los recursos informáticos, incluido el mantenimiento del servidor y del sistema operativo, el aprovechamiento de capacidad y el escalado automático, la implementación de parches de seguridad y código, así como la monitorización y los registros. Lo único que tienes que hacer es proporcionar el código.
El modelo de programación de lambda es: Handler, context object, looging y exceptions.
Si quieres entender un poco más, te presento las instrucciones de cómo hacerlo:
1.- Haz el código:
2.- El rol:
Haz un archivo trust.json. Este le permitirá a nuestra función asumir el role en AWS lambda, de otra manera la infraestructura no te permitirá correr la función.
3.- El deployment:
Crea el siguiente script: (deploy.sh). tomando en cuenta que este asumirá que si tienes ya tu cuenta de ambientes en AWS.
Haz el script ejecutable chmod +x deploy.sh y haz del deploy de lambda: ./deploy.sh. En ocasiones puede ser que aparezca el error: “El rol definido para la función no puede ser asumido por Lambda” esto es porque el rol no ha sido replicado en el ambiente de la infraestructura de Amazon. Corre el deployment nuevamente y entonces tal vez te señale que el role existe pero si lo ejecutará.
4.- La ejecución:
Ejecuta tu lambda con el siguiente comando, verás el resultado en un archivo output.txt
aws lambda invoke --invocation-type RequestResponse --function-name helloworld --payload '[""]' output.txt
Espero que te este artículo te haya ayudado un poquito a entender qué es lambda de amazon web services.
Fuente: https://dzone.com/articles/aws-lambda-for-beginners