Componentes de AWS Lambda
En términos más simples, los componentes de AWS Lambda esenciales del sistema sin servidor son: solicitudes que llegan de sus clientes;
Algún tipo de código que se ejecuta en el medio que implementa la lógica de su negocio; y luego los servicios de back-end con los que se integra el código, como una base de datos u otras API y servicios posteriores.
Entonces, si comienza a pensar en esto en términos más abstractos, las solicitudes HTTP pueden considerarse eventos que tienen algún significado para nuestro servicio.
En el medio tiene el código que maneja estos eventos o lo que llamaríamos “el controlador”.
Y luego tiene un conjunto de servicios de back-end con los que interactúa el controlador.
Y esta vista abstracta de nuestra arquitectura es exactamente el mismo modelo que usa AWS Lambda.
Tiene orígenes de eventos que pueden ser cualquier cosa, desde una solicitud http, un cambio que se realiza en un grupo de seguridad, un nuevo objeto que se crea en S3 o una actualización que se realiza en una tabla de DynamoDB.
Luego tienes la función Lambda en sí. Este es el controlador donde implementa su lógica de negocios. Puede escribir funciones de Lambda en varios lenguajes diferentes, incluidos JavaScript, python, java, C# o Go. Y todos los demás problemas de infraestructura de los que hablamos anteriormente se gestionan por usted.
Y finalmente, está el backend, ya sea una base de datos, otros servicios de AWS o API de terceros. Puede acceder a cualquier extremo de la red desde su código de la misma manera que lo haría en un modelo de implementación tradicional.
Entonces, echemos un vistazo a lo que se necesita para construir e implementar una función de Lambda.
Es realmente un proceso bastante simple.
Escribe código de la misma manera que lo haría para cualquier otra aplicación. La única restricción es que proporcione un método de controlador que sirva como punto de entrada a su código.
Luego empaqueta ese código en un archivo zip. Este es solo un archivo zip estándar que puede crear en cualquier computadora.
Luego carga ese zip en el servicio Lambda.
Luego, según cómo haya configurado las fuentes de eventos para su función, su código se ejecutará automáticamente en respuesta a esos eventos a medida que ocurran.
El servicio Lambda se encarga de aprovisionar los entornos informáticos y de tiempo de ejecución subyacentes y de asegurarse de que su código se implemente según sea necesario para que no tenga que preocuparse por los pasos típicos de implementación que son comunes en las arquitecturas basadas en servidor.
Gracias por llegar hasta aquí, si encuentras esto útil no olvides dejar un👍🏼y suscribirse para recibir más contenido.
Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre AWS y Laravel: