aws-lambda Handledning
Komma igång med aws-lambda
Sök…
Anmärkningar
AWS Lambda är en serverlös installation för att köra funktioner i molnet. Den utnyttjar befintliga Amazon Web Services-teknologier för att stegvis skala och köras endast när det är nödvändigt i sin egen isolerade miljö. Med hjälp av Lambda kan du ladda upp din kod, konfigurera den så att den körs baserat på olika triggers och sedan automatiskt stänga av processen när den är klar. Den fungerar enligt en betal-per-användning-modell och är extremt kostnadseffektiv och lätt att skala.
AWS Lambda stöder kod skriven i Node.js (JavaScript), Python, Java (Java 8 kompatibel) och C # (.NET Core). Din kod kan innehålla befintliga bibliotek, även inhemska.
Triggers kan inkludera:
HTTP-slutpunkter
- Mobilappar
- Andra AWS-tjänster (inklusive REST-implementering med Amazon API Gateway)
Lambda är bäst designad för realtid serverfri databehandling som:
- Filbehandling av uppladdningar
- omkodning
- indexering
- Godkännande
- Ändra storlek på och filtrera
- Streamingdataanalys
- Telemetry
- Kör som en metodbaserad mobil- och webbbackend
- Utöka och länka andra AWS-produkter
Installation eller installation
Logga in på din AWS-konsol och klicka på Lambda under fliken Tjänster .
Under Funktioner kan du skapa en Lambda-funktion med samma märkta knapp.
Du får en skärm där du kan välja en plan. Detta är helt enkelt utgångspunkter till befintliga Lambda-funktioner för att snabbt börja med Lambda.
På nästa skärm kan du konfigurera alla triggers som du vill använda för att "ställa in" denna Lambda-funktion. Du kan välja mellan inga triggers (genom manuell installation senare beroende på din uppgift), API Gateway (för att skapa en serverlös REST-klient), Alexa Skills eller en mängd andra andra för att avbryta funktionen du skapar.
Du avslutar konfigurationen på nästa skärm genom att ställa in Namn , Beskrivning , välja Runtime , välja att redigera funktionen inline, ladda upp en .zip-fil eller ladda upp en fil från Amazon S3, välja en roll (användbar för behörighetsbaserad interaktion mellan AWS-tjänster), ställa in minnet och gränserna och redo din app för levande användning.
Slutligen granskar du din funktion och skapar den. Eftersom Lambda använder Pay-Per-Use-modellen uppstår inga laddare förrän du börjar använda din nyskapade funktion.
Java AWS-Lambda S3 utlöst
En AWS-Lambda-funktion kan anslutas till en viss händelsehändelse. När en fil / mapp skapas eller tas bort kan en händelse utlösa körning av lambda-funktionen.
En enkel Lambda-funktion för att skriva ut namnet på en uppladdad fil
Detta är ett lambda-projekt i en klass för att skriva ut namnet på en uppladdad fil. För maven måste vi lägga till dessa beroenden:
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-lambda-java-core</artifactId>
<version>1.1.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-lambda-java-events</artifactId>
<version>1.3.0</version>
<type>jar</type>
</dependency>
</dependencies>
Låt oss nu gå till vår HelloWorld Class:
package com;
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.amazonaws.services.lambda.runtime.events.S3Event;
import com.amazonaws.services.s3.event.S3EventNotification;
public class HelloWorld implements RequestHandler< S3Event, String> {
@Override
public String handleRequest(S3Event event, Context ctx) {
S3EventNotification.S3EventNotificationRecord record=event.getRecords().get(0);
System.out.println("Bucket Name is "+record.getS3().getBucket().getName());
System.out.println("File Path is "+record.getS3().getObject().getKey());
return null;
}
}
Nästa steg är att bygga projektet med mvn.
Efter att vi har byggt projektet måste vi ladda upp det till AWS-Lambda. Gå till Lambda, välj "skapa en lambda-funktion". Hoppa över den del där du väljer planen, för Java är vanligtvis inte där.
Hoppa också över "Konfigurera utlösare" eftersom vi konfigurerar det från en annan plats. På nästa sida, ange ett namn för din första lambda-funktion, sedan en liten beskrivning och välj Java som körtid.
För "kodinmatningstyp", välj "Ladda upp från en .ZIP-fil" och välj sedan din .zip-fil på nästa plats för att ladda upp den.
Den knepiga delen på denna sida är Handler-fältet. I hanteringsfältet måste du ange platsen för klassen som implementerar RequestHandler. Den här klassen är ingångspunkten för lambda och din Lambda-funktion fungerar inte om det inte anges korrekt. För vår ärende är "com.HelloWorld"
Ansluta en S3-trigger till Lambda:
Här kommer vi att bifoga en trigger till uppladdningen av S3-filen
- Gå till S3, välj hinken och sedan "Egenskaper".
- Gå till "Händelser" i avsnittet "Egenskaper".
- Lägg till information om evenemanget. I fältet "Händelser" väljer du hur du vill utlösa din Lambda. Vi väljer "ObjectCreated (All)" Observera att lambda-funktionen och hinken måste vara i samma amazon Region
- För "Skickar till", kolla Lambda-funktionen och välj din lambda-funktion från listan.
Övervaka Lambda Output
Nu kommer vi att ladda upp en fil till skopan som har lambda-utlösaren. För att se lambda-utgångarna och loggarna, gå till "CloudWatch", välj sedan "Loggar" och välj sedan din Lambda-funktion. Du kanske ser många poster under "Log Streams", välj den senaste och öppna den. Du bör kunna se utgången från lambda-exekveringen där.