.NET CLI: Cómo comenzar a utilizar AWS Lambda

[vc_row el_class=”blog-info”][vc_column][vc_single_image source=”featured_image” img_size=”full” style=”vc_box_rounded”][vc_empty_space height=”40px”][vc_row_inner][vc_column_inner width=”1/6″][/vc_column_inner][vc_column_inner width=”2/3″][vc_column_text el_class=”font-weight-bold”]

Cómo comenzar a utilizar AWS Lambda mediante .NET

.NET CLI — AWS Lambda es una plataforma informática de plataforma sin servidor impulsada por eventos. Una plataforma informática ejecuta el código en respuesta a los eventos y gestiona los requisitos informáticos entre bastidores.

[/vc_column_text][vc_empty_space height=”40px”][/vc_column_inner][vc_column_inner width=”1/6″][/vc_column_inner][/vc_row_inner][vc_row_inner][vc_column_inner width=”1/6″][/vc_column_inner][vc_column_inner width=”2/3″][vc_column_text]


Empezando

Hay varias formas de comenzar con AWS Lambda, pero descubrí que .NET CLI es una opción fácil de aprender y ayudar en casos de uso avanzados como la configuración y el monitoreo de CI / CD.

El enfoque basado en .NET CLI ofrece formas multiplataforma para crear aplicaciones Lambda basadas en .NET. Si es nuevo en .NET CLI, le sugiero que lo lea aquí.

https://docs.microsoft.com/en-us/dotnet/core/tools/

 

dotnet new -i Amazon.Lambda.Templates

La plantilla es similar a instalar cualquier plantilla de proyecto de Visual Studio, y si no desea utilizar una plantilla de Visual Studio.

Una vez que lo instale, podrá ver las siguientes plantillas instaladas:

.NET CLI

Comenzaremos con una función vacía simple y la implementaremos en AWS Lambda.


Primera función

Comience escribiendo el comando:

dotnet new lambda.EmptyFunction

La plantilla crea los archivos necesarios en la carpeta:

.NET CLI

Todo lo que hace esta función es tomar la entrada y ponerla en mayúscula:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

using Amazon.Lambda.Core;

// Assembly attribute to enable the Lambda function's JSON input to be converted into a .NET class.
[assembly: LambdaSerializer(typeof(Amazon.Lambda.Serialization.SystemTextJson.DefaultLambdaJsonSerializer))]

namespace lambdabasics
{
    public class Function
    {
        
        /// <summary>
        /// A simple function that takes a string and does a ToUpper
        /// </summary>
        /// <param name="input"></param>
        /// <param name="context"></param>
        /// <returns></returns>
        public string FunctionHandler(string input, ILambdaContext context)
        {
            return input?.ToUpper();
        }
    }
}

Entonces, implementemos la aplicación. Para ello, debe instalar algunas herramientas de AWS Lambda. Nuevamente, esto se puede hacer usando .NET CLI.

dotnet tool install -g Amazon.Lambda.Tools

Implementarlo

Vaya a la carpeta src e ingrese:

dotnet lambda deploy-function MyFunction

Le pedirá que cree un nuevo rol de IAM y les proporcione detalles de acceso. Puede solicitar una nueva función de IAM y proporcionar un nombre. Para acceder, puede seleccionar AWSLambdaExecute (Permiso para ejecutar la función lambda) o seleccionar 3.


Pruebas

Puede invocar la función usando la misma herramienta:

dotnet lambda invoke-function MyFunction — cli-binary-format raw-in-base64-out — payload “Just Checking If Everything is OK”

Entonces estamos invocando la función con el nombre MyFunction y verificando si la carga útil es correcta:

.NET CLI

Hay una plantilla de Visual Studio que se puede usar en lugar de la CLI, pero la CLI proporciona una manera fácil de entender para los principiantes y lo coloca gradualmente en el camino para mejores casos de uso.

Y ahí lo tienes. ¡Gracias por leer!

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/6″][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row el_class=”social-info”][vc_column width=”1/6″][/vc_column][vc_column width=”2/3″][vc_row_inner][vc_column_inner width=”1/2″][vc_column_text][social_share_button themes=’theme1′][/vc_column_text][/vc_column_inner][vc_column_inner el_class=”youtube-inner-col” width=”1/2″][vc_column_text][likebtn theme=”youtube” lang=”auto” show_like_label=”0″ white_label=”1″ alignment=”right”][/vc_column_text][/vc_column_inner][/vc_row_inner][vc_row_inner el_class=”social-info-inner”][vc_column_inner width=”1/4″][vc_single_image image=”921″][/vc_column_inner][vc_column_inner width=”3/4″][vc_column_text]

Diego Pacheco

Ingeniero en Sitemas, MBA (Babson College). Desarrollador PHP/Java/JavaScript. Fundador & CEO de EpicStudio. Entusiasta de las tecnologías web (JavaScript, Vue, Laravel, AWS, Docker) Viajes, Negocios, Surf y Growth.[/vc_column_text][asvc_list_item icon_fontawesome=”fa fa-calendar-o” icon_size=”14px”]Programar una reunión[/asvc_list_item][/vc_column_inner][/vc_row_inner][/vc_column][vc_column width=”1/6″][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]

Recent Post

[/vc_column_text][lvca_posts_carousel posts_query=”size:3|order_by:rand|post_type:post” image_linkable=”true” image_size=”full” taxonomy_chosen=”post_tag” display_title=”true” display_post_date=”true” display_summary=”true” autoplay_speed=”3000″ animation_speed=”300″ display_columns=”3″ scroll_columns=”3″ gutter=”3″ tablet_display_columns=”2″ tablet_scroll_columns=”2″ tablet_gutter=”3″ tablet_width=”800″ mobile_display_columns=”1″ mobile_scroll_columns=”1″ mobile_gutter=”3″ mobile_width=”480″][vc_empty_space height=”20px”][/vc_column][/vc_row]