Hoy, AWS LEmbda está promoviendo el soporte para Experimento a Disponible. Esto significa que puede utilizar Rust para crear aplicaciones no comerciales, respaldadas por el soporte de AWS con SLASD BIST y SLAST BIST.
Dust es un lenguaje popular bien merecido por su combinación de alto rendimiento, seguridad de la memoria y experiencia del desarrollador. Ofrece la comodidad de utilizar C++ y la confiabilidad de los lenguajes de alto nivel.
Esta publicación le muestra cómo crear e implementar trabajos de Local Rush utilizando funciones de Cargo Lambda, una herramienta de código abierto de terceros para trabajar con funciones de Lambda. También cubriremos la implementación de un flujo de trabajo utilizando la compilación Cargo Lambada AWS Cloud Cloud (AWS CDK).
Artículo anterior
Antes de comenzar, asegúrese de:
- Una cuenta de AWS con los permisos necesarios.
- La interfaz de línea de comandos de AWS (AWS Cli) está configurada con sus credenciales
- Rust instalado en su máquina de desarrollo (versión 1.70 o posterior)
- Node.js 20 o posterior (para descarga de aws cdk)
- AWS CDK instalado:
npm install -g aws-cdk
Vista completa
Esta publicación lo guiará a través de los siguientes pasos:
- Instalar y configurar Cargo Lambda.
- Cree e implemente una función http Lambda utilizando Cargo Lambda.
- Cree una API que no pueda utilizar AWS CDK y la corrosión de la funcionalidad de Remembda.
Instalar y configurar Cargo Lambda
Cargo es el administrador financiero y el sistema de construcción de Rust. Cargo Lambda es una extensión celular de terceros para la herramienta de línea de comandos que presenta la generación y eliminación de óxido.
Para instalar Animal Lambda en sistemas Linux, ejecute:
Para opciones de instalación adicionales, consulte la documentación de instalación de Cargo Lambda.
Construyendo su primer trabajo en la alfombra roja
Cree una función de día basada en Lambdand:
Preguntado sobre ¿Funciona esta función http?ingresar clase de palabra.
Esto crea un proyecto con la siguiente estructura:
El programa incluye:
main.rs– El punto de integración funcional es donde combinas confianza y estilo.http_handler.rs– Tecnología de rendimiento central
El main.rs El archivo contiene el siguiente código:
La parte principal del main.rs el archivo es run(service_fn(function_handler)).await. La gestión es parte del http_lambda Crate comenzará con Lambda Security (ric), que puede sondear eventos desde Rundda Runtime API. El function_handler la función está definida en el http_handler.rs archivo. Cuando la API RUNTIME devuelve la sesión de solicitud, ric llama al function_handler de http_handler.rs:
El function_handler El trabajo de firma es todo lo contrario. event Artículo anterior Request. El event El contenido del servicio está bloqueando el proceso. Por ejemplo, puede haber información de solicitud Http, como la ruta entrante si la solicitud se realiza a través de HTTP, o más registros de Amazon KinesIS.
Para tareas que no sean http, se pueden escribir eventos. Además, podéis acordar una estructura a la que entrar cuando sea significativo. serde::Serialize y serde::Deserialize.
La fórmula trata con signos de interrogación y busca el primer carácter que contiene el nombre. name.
El lambda_http Crate está destinado a devolver una respuesta, utilizando una plantilla de constructor. La función devuelve una respuesta como Result y el Ok() es por eso run calarse main.rs esperar.
Doblar
El main.rs El archivo contiene la siguiente línea:
La arquitectura de Rust Runtime incluye registros y registros públicos, y admite JSON preformado. Al trazar esta línea y la RUST_LOG Cambiando el entorno, Lambda ofrece bases de datos a la nube para Amazon. Por defecto, el INFO Habilita el nivel de registro.
Para escribir los registros, use la plataforma street y envíe los programas usando la siguiente sintaxis:
Casa
Para crear una función Lambda, utilice cargo lambda build. Al compilar una función Lambda, AWS LEmbda Runtime se crea en su binario. El archivo binario se llama bootstrap. Está empaquetado en un archivo .ZIP y se puede encontrar como un archivo en AWS LEmbda.
Cuando Rembda ejecute este binario, iniciará una copia de seguridad ilimitada (el Run trabajar). Los votos del Rullda Runtime Runtime para conseguir la aplicación que llamas tu limpiadora, la function_handler Trabajar.

Su código de acción se ejecuta y la respuesta de la acción se envía a Runtime Runtime API, que la envía al remitente.
Experimento
Antes de enviar el trabajo, puedes completar/probar el trabajo utilizado por el dominio. cargo lambda.
cargo lambda watch Crea un entorno que representa el entorno de ejecución de Lambda. De esta manera puede enviar una solicitud a la función Lambda y ver los resultados.
Para enviar la solicitud, puede utilizarla. cargo lambda o enviar un curl Aplicar al emulador Emulador.
Para usar cargo lambdaEjecute lo siguiente, Reemplazar y hi_api Para este ejemplo
Puede utilizar uno de los precios integrados y --data-example Parámetros. Causa --data-ascii para realizar su propio pago.
Para aplicar la función usando curlpase el formato JSON a la dirección del emulador local:
Envío con Cargo Lambda
Una vez creada la función usando cargo lambda buildpuede cargar su cuenta de AWS.
Para enviar tu trabajo:
Una vez implementada la función Lambda, puede probarla de forma remota. cargo lambda invoke Pruebe la función Lambdate utilizando el valor almacenado en el .json Archivo:
Tecnología como código con AWS CDK
Puedes crear una API gratuita antes de esta actividad del óxido del polvo de Lamberda utilizando la API de Amazon Game. Este ejemplo utiliza el CDK CDK. No se garantiza que este modelo esté configurado para el final de la dirección API, ya que es un modelo. Lo que AWS hace mejor es implementar los controles adecuados.
- Primero, cree un nuevo proyecto CDK:
La forma más sencilla de implementar un trabajo de óxido recordado es utilizar AWS CDK para utilizar el
cargo lambdaProducción de CDK. Viene con todo lo que necesita para gestionar el óxido en AWS. Es parte delcargo lambdaProyecto. - Instale el CDK Cargo Lambda generado:
- Cree una nueva función HTTP Lambda en su proyecto:
Preguntado sobre ¿Funciona esta función http?ingresar clase de palabra.
- Actualice su implementación de CDK
lib/rusty_cdk-stack.tsPara instalar la función Lambda con el Gateway. - Arranque su cuenta de AWS y su dominio de AWS para AWS CDK:
- Limpia tu pila:
Pruebe la API
Para probar su API distribuida utilizando la URL proporcionada en la versión CDK CDK:
Lavado
Para evitar cargos continuos, elimine los recursos asignados:
ultima parte
La compatibilidad con AWS LEmbda está disponible para que Dust cree aplicaciones grandes y sin memoria. Cargo Lambda es una extensión de terceros para Dust cargo CLI facilita la experiencia del desarrollo, las pruebas y la recuperación de aplicaciones libres de óxido.
Para obtener más información sobre cómo crear aplicaciones gratuitas con Rust:
Para encontrar ejemplos de leyes más elásticas, utilice la colección de ejemplos gratuita. Para obtener más recursos de aprendizaje gratuitos, visite el mundo gratuito.

