Einführung in AWS Lambda

AWS Lambda ist ein responsiver Cloud-Service, der die Aktionen der Anwendung überprüft und durch die Bereitstellung benutzerdefinierter Codes, so genannter Funktionen, reagiert. Bevor wir uns eingehend mit dem Thema befassen, lassen Sie uns zunächst AWS Lambda anhand zweier verschiedener Szenarien verstehen.

Problem

Sie haben ein Projekt im Sinn. Sie formulieren den Algorithmus in Ihrem Kopf. Sie bewerten die Technologie-Stack-Optionen, die Sie zum Erstellen Ihres Projekts verwenden können. Alles läuft sehr gut, bis Sie feststellen, dass Sie die erforderliche Software, IDEs, Tools und den erforderlichen Speicherplatz für den Server herunterladen müssen, um Ihren Code bereitzustellen. Okay, Sie müssten die Basisinfrastruktur einrichten, bevor Sie mit der eigentlichen Codierung Ihres Projekts beginnen. Ohh, aber Sie müssen Ihre Anwendung nahtlos auf Computern sowie auf mobilen Schnittstellen ausführen können. Dies bedeutet, dass mehr Infrastruktur eingerichtet werden muss, bevor Sie mit der Grundcodierung beginnen.

Zu viel Aufwand für die ersten Entwicklungsphasen? Zu viel Aufwand für die Verwaltung der Infrastruktur, selbst wenn Ihr Projekt skaliert? Übersteigt Ihr Projekt die Kostenvoranschläge? Ist Ihr Fokus auf alle Dinge außer Codierung aufgeteilt?

Lösung - Dies sind die Probleme, aber AWS Lambda ist die Lösung.

AWS Lambda - Serverloses Rechnen

Mit AWS Lambda können Sie Ihren Code ausführen, ohne die Server und andere unterstützende Infrastrukturen bereitzustellen. Sie können in jeder Art von Anwendung oder Back-End-Dienst programmieren, ohne sich Gedanken über den Server oder die unterstützenden DLLs / Software zu machen. Sie müssen sich nur auf Ihren Code konzentrieren. Rest alles wird von AWS erledigt, angefangen bei der Bereitstellung Ihres Codes über das Auslösen Ihres Codes bei bestimmten Ereignissen bis hin zur Verwaltung von mehr Server-Speicherplatz, wenn Ihr Code skaliert.

  • AWS berechnet Ihnen die Ausführungszeit Ihres Codes in Vielfachen von 100-Millisekunden-Frames. Für die Zeit, in der sich Ihr Code im Leerlauf auf dem Server befindet, wird keine Gebühr erhoben. Welche bessere Motivation, effizienten Code zu schreiben!
  • Der Begriff "Serverless" bezeichnet häufig die Verlagerung in die Cloud. Mit der Cloud können Sie Ihre operativen Aufgaben an AWS delegieren und sich mehr darauf konzentrieren, durch Ihre Anwendung ein besseres Kundenerlebnis zu erzielen.
  • Währenddessen erledigt AWS Aufgaben wie Infrastrukturverwaltung, Clustering, Patching, Sicherheit, Betriebssystemwartung usw.

Warum AWS Lambda?

Wie es die menschliche Natur ist, ist es immer gut zu bewerten, ob die Technologie / das Werkzeug den Nutzen wert ist. Sehen wir uns einige der Funktionen von AWS Lambda an, die Entwicklern das Leben erleichtern.

1) Bringen Sie Ihren eigenen Code mit

Da AWS mit dieser Funktion sehr zufrieden ist, können Sie mit Lambda in jeder Sprache codieren, und AWS würde die zugrunde liegende Unterstützung bereitstellen. Es unterstützt fast alle Muttersprachen, JavaScript-Frameworks, Bibliotheken von Drittanbietern und was nicht.

2) Eine Vielzahl anderer AWS-Services

AWS ist eine zentrale Anlaufstelle für die gesamte erforderliche Infrastruktur. Es lässt sich problemlos in verschiedene Dienste wie Speicher (S3), Datenbanken (RDS, DynamoDB), Server (EC2), Sicherheitsmanagement (IAM), Netzwerke (Route53, CloudFront) und vieles mehr integrieren.

3) Benutzerdefinierter Code

Müssen Sie eine benutzerdefinierte Back-End-Logik schreiben, die auf einen einzelnen Client zugeschnitten ist? Verwenden Sie AWS Lambda, um benutzerdefinierte Services zu schreiben und Ihren Code frei von Client-Plattform-Updates zu machen, anstatt die Logik auf der Clientseite zu schreiben.

4) Pay Per Use

Sie müssen keine Dollars auszahlen, solange Ihr Code inaktiv ist. Wenn Ihr Dienst nur tagsüber Zugriffe erhält, zahlen Sie nur für die Zeit, in der Ihr Code ausgeführt wird. Dies wird in Zeitrahmen von 100 Millisekunden berechnet.

5) Automatische Skalierung

AWS skaliert Ressourcen automatisch, wenn Ihr Service höhere Zugriffe erhält. Sie müssen nichts konfigurieren, um zusätzliche Ressourcen zu beschaffen. Die Anzahl der Anforderungen, die Ihr Code verarbeiten kann, ist unbegrenzt. Somit bleibt die Leistung jederzeit hoch.

6) Amazon Disaster Recovery

Da Ihr Code und Ihre Daten in mehreren Verfügbarkeitszonen repliziert wurden, hat ein Ausfall der Einrichtung keine Auswirkungen auf Ihre Anwendung. Die Anforderungen werden automatisch an eine andere Zone weitergeleitet.

Beginnen wir mit dem AWS Lambda-Lernprogramm

Aufgeregt? Beginnen wir mit AWS Lambda. Da es in der Programmierwelt eine Gewohnheit ist, würden wir mit einem einfachen "Hallo Welt" -Programm beginnen.

Erforderliche Schritte

Um mit AWS Lambda zu beginnen, benötigen Sie ein AWS-Konto. Es unterscheidet sich von dem Amazon-Konto, das Sie zum Einkaufen verwenden. Wenn Sie bereits eine haben, melden Sie sich bei der Konsole an und fahren Sie mit dem nächsten Abschnitt fort. Wenn nicht, befolgen Sie die folgenden Schritte. Keine Sorge, es ist absolut kostenlos, solange Ihre Bewerbung das kostenlose Statuslimit nicht überschreitet.

Erstellen Sie ein AWS-Konto

  • Öffnen Sie die AWS-Konsole. Klicken Sie auf Neues AWS-Konto erstellen.

  • Füllen Sie Ihre Informationen aus und aktualisieren Sie Ihre Kartendaten. Amazon berechnet Ihnen nichts, es sei denn, Sie überschreiten das Nutzungslimit für die kostenlose Nutzung. Das freie Nutzungslimit ist für die Einzelbenutzerentwicklung reichlich vorhanden.
  • Besuchen Sie nach Abschluss des Anmeldevorgangs den Link in Schritt 1 erneut. Melden Sie sich dieses Mal mit Ihrem Benutzernamen und Kennwort bei der Konsole an.

Betreten Sie die Lambda-Konsole

Sobald Sie sich bei der AWS-Verwaltungskonsole angemeldet haben, wird im Kopfbereich ein Link zu Services angezeigt. Klicken Sie darauf und Sie würden Lambda innerhalb des Compute- Unterabschnitts finden.

So sieht die Lambda-Konsole auf den ersten Blick aus:

Sie können auch zum Lambda-Dashboard navigieren und Statistiken Ihres Codes anzeigen. Es gibt Ihnen einen Einblick in die Anzahl der Aufrufe, die Ausführungsdauer, die Erfolgsquote und die Fehlerquote usw. Ein Beispiel-Dashboard sieht in etwa wie folgt aus.

Ok, der nächste Schritt ist das Erstellen einer Funktion. Alle Codes in Lambda werden als Funktionen bezeichnet, weil sie eine bestimmte Aufgabe erfüllen. Beachten Sie die Schaltfläche Funktion erstellen oben rechts in der Lambda-Konsole. Diese Schaltfläche bringt uns zum folgenden Bildschirm:

Erstellen einer AWS Lambda-Funktion

Führen Sie die folgenden Schritte aus, um die AWS Lambda-Funktion zu erstellen.

Schritt 1

Zunächst haben wir drei Möglichkeiten:

  • Author from Scratch - Sie erhalten eine leere Vorlage und können Ihren Code von Grund auf neu schreiben.
  • Blaupause verwenden - Eine Vorlage mit einigen enthaltenen Bibliotheken, die Ihren Anforderungen entspricht. Sie müssen nur an der Logik Ihres Codes arbeiten.
  • Serverloses App-Repository durchsuchen - Bereit zur Verwendung von integrierten Codes, die verschiedene Funktionen ausführen. Diese können auch problemlos in Ihrem Code verwendet werden.

Um unserem Verständnis von Lambda gerecht zu werden, würden wir zunächst eine Blaupause verwenden. Sobald Sie sicher genug sind, können Sie beginnen, Ihren Code von Grund auf neu zu erstellen und das Potenzial von AWS Lambda auszuloten.

Klicken Sie nun auf Use A Blueprint und suchen Sie nach dem Wort hallo. Die folgenden Ergebnisse werden angezeigt. Lassen Sie uns unsere Hello World-Anwendung mit NodeJS erstellen.

Schritt 2

Nun gelangen wir zum Konfigurationsbildschirm für unsere Funktion. Geben Sie einen Namen Ihrer Wahl ein und wählen Sie "Neue Rolle aus AWS-Richtlinienvorlagen erstellen" aus der Dropdown-Liste für die Ausführungsrolle. Geben Sie den Rollennamen 'lambda_basic_execution' an.

Hinweis - Eine Ausführungsrolle definiert die Berechtigungen, die AWS Lambda beim Ausführen Ihres Codes annehmen kann. Eine grundlegende Ausführung bedeutet, dass Lambda den Code einfach ausführt, wenn keine Bibliothek eines Drittanbieters beteiligt ist. Für den Fall, dass Ihr Code mit Amazon S3 oder RDS oder EC2 oder anderen Diensten interagieren muss, müssen Sie Ihrer AWS Lambda-Funktion die entsprechenden Berechtigungen für den Zugriff auf diese Dienste erteilen.

Klicken Sie unten auf dem Bildschirm auf die Schaltfläche Funktion erstellen. Der folgende Bildschirm wird angezeigt, wenn Ihre Funktion erfolgreich erstellt wurde.

Hinweis - Der ARN- oder Amazon-Ressourcenname ist ein eindeutiger Name Ihrer Funktion. Dies kann als Endpunkt verwendet werden, um Ihre Funktion auszulösen. Mit den Auslösern im Designer-Bereich fügen Sie Dienste hinzu, die Ihre Funktion auslösen können. In jedem Dienst, der Ihre Funktion auslösen kann, muss die ARN Ihrer Funktion konfiguriert werden. Es ist wie eine wechselseitige Bindung von Diensten. Der Auslöserdienst weiß, dass er Ihre Funktion treffen muss, und Ihre Funktion ist so konfiguriert, dass sie Anforderungen von den hinzugefügten Auslöserdiensten empfängt. Das Hinzufügen von Triggern ist die nächste Stufe der Lambda-Lernprogramme und würde den Rahmen dieses Artikels sprengen.

Schritt 3

Unter dem Designer-Unterabschnitt befindet sich der Funktionscode-Unterabschnitt. Dies ist Ihre Inline-IDE, die von Amazon bereitgestellt wird. Es sieht ungefähr so ​​aus:

  • In der Dropdown-Liste Code Entry Type können Sie auswählen, ob Sie Code inline bearbeiten oder eine Zip-Datei von Ihrem System hochladen oder eine Zip-Datei von Amazon S3 hochladen möchten. Die Upload-Optionen können für komplexe Codes verwendet werden, die leicht in einer besser ausgestatteten IDE in Ihrem lokalen System bearbeitet werden können.
  • Runtime ist die Sprache / das Framework, die / das Ihren Code unterstützt.
  • Ein Handler ist eine Aufruffunktion in Ihrer AWS-Lambda-Funktion. Ihre AWS-Lambda-Funktion kann mehrere Handler enthalten, und Sie können angeben, mit welchem ​​Handler die Ausführung beginnen soll. Picture Handler als Methoden, die zur Ausführung bestimmter Aufgaben vorgesehen sind.

Schritt 4

Oben auf der Seite sehen Sie einen Streifen mit einigen Schaltflächen. Klicken Sie auf Testereignis auswählen, um unseren Code zu testen. Dadurch werden Sie aufgefordert, ein Testereignis zu konfigurieren, falls keines erstellt wird.

Konfigurieren Sie Ihr erstes Testereignis wie folgt:

Speichern Sie das Testereignis und klicken Sie auf Test. Sie sehen die Ausführungsergebnisse Ihrer Funktion.

  • Antwort - Das von Ihrer Funktion zurückgegebene Endergebnis. Beachten Sie, dass unsere Funktion key1 zurückgegeben hat.
  • Anforderungs-ID - Jede Anforderung an Ihre Funktion hat eine eindeutige Anforderungs-ID. Diese werden von Amazon verwendet, um Anfragen zu verfolgen und Ihre Zahlungsinformationen zu generieren.
  • Funktionsprotokolle - Der aufschlussreichste Teil von AWS Lambda. Dies sind detaillierte Protokolle, die den Beginn und das Ende der Ausführung Ihrer Funktion angeben. Im Gegensatz zum Debuggen in üblichen IDEs stützt sich AWS Lambda beim Debuggen stark auf Protokolle. Sie werden in CloudWatch auch für zukünftige Verweise gespeichert.

Herzliche Glückwünsche! Sie haben erfolgreich eine Lambda-Funktion angelegt. Aber warte, wir haben es noch nicht aufgerufen. Wir haben es gerade aus unserer eigenen Umgebung getestet. Rufen wir es von außen auf.

Aufrufen der AWS Lambda-Funktion

Wir würden eine REST-API erstellen, um die Lambda-Funktion aufzurufen.

Schritt 1

Gehen Sie zu Amazon API Gateway. Sie finden es auch unter Dienste -> Netzwerk und Inhaltszustellung. Klicken Sie auf Create API.

Schritt 2

Konfigurieren Sie die grundlegenden API-Details wie folgt und klicken Sie auf API erstellen.

Schritt 3

Jetzt wird Ihre API erstellt, aber in der API ist keine HTTP-Methode definiert. Klicken Sie auf Actions Dropdown und Create Method. Sie werden feststellen, dass im linken Bereich ein kleineres Dropdown-Menü angezeigt wird. Klicken Sie in diesem Dropdown auf GET. Im Grunde erstellen wir eine HTTP-GET-Methode für unsere API.

Schritt 4

Konfigurieren Sie Ihre GET-Methode so, dass eine Lambda-Funktion wie unten dargestellt aufgerufen wird. Sie müssen die ARN Ihrer Lambda-Funktion im Feld Lambda-Funktion angeben. Klicken Sie auf Speichern.

Sobald Ihre GET-Methode gespeichert ist, gelangen Sie zum folgenden Methodenausführungsbildschirm.

Schritt 5

Jetzt wird auch Ihre GET-Methode erstellt. Wir haben jedoch immer noch nicht die Schlüsselwertpaare angegeben, die wir in unserer Testumgebung erstellt haben. Unsere AWS Lambda-Funktion erwartet drei Schlüssel und Werte. Definieren wir sie.

Klicken Sie auf Integrationsanforderung und scrollen Sie nach unten zu Zuordnungsvorlagen. Definieren Sie Ihre Mapping-Vorlage wie folgt. Der Inhaltstyp ist application / json. Dies ist einfach das Format der Parameter, die Sie in Ihrem Anfragetext senden würden.

Die API kann jetzt bereitgestellt werden.

Schritt 6

Klicken Sie auf Aktionen und API bereitstellen. Wählen Sie im Popup-Fenster für die Bereitstellung die Option Neue Phase aus und geben Sie einen aussagekräftigen Namen und eine Beschreibung ein.

Sie gelangen zum folgenden Bildschirm, in dem der REST-Endpunkt Ihrer API konfiguriert und einsatzbereit ist.

Klicken Sie auf den Endpunkt und der Browser sendet eine Anfrage an Ihre Lambda-Funktion und zeigt die Antwort an.

Herzliche Glückwünsche! Sie haben Ihre Lambda-Funktion ebenfalls erfolgreich aufgerufen. Eine ziemliche Errungenschaft.

Wer kann AWS Lambda lernen?

Mittlerweile muss klar sein, dass die AWS Lambda-Funktion ein wenig Wissen über Dienste, die Bereitstellung von Diensten, Anforderungen und Antworten erfordert. Dies sind grundlegende Dinge, die jeder Computerprogrammierer wissen muss, um Webanwendungen zu erstellen. Wenn Sie nicht über ausreichende Kenntnisse zu diesem Thema verfügen, empfiehlt es sich, diese Kenntnisse zu erwerben, damit eine problemlose Codierung in AWS Lambda gewährleistet ist.

AWS verfügt außerdem über eine umfassende Dokumentation aller seiner Services. In der Dokumentation erfahren Sie mehr über die AWS-Welt.

Karriere bei AWS Lambda

Es ist nicht nur Lambda, sondern der gesamte Amazon Web Services-Sektor boomt heute. Experten für AWS-Services sind gefragt. AWS bietet auch Zertifizierungen an, die Ihrem Fachwissen entsprechen. Weitere Informationen hierzu finden Sie auf der AWS-Website.

Fazit

Nachdem Sie die Grundlagen der AWS Lambda-Funktionen verstanden haben, erstellen Sie weitere Funktionen und integrieren Sie diese in andere AWS-Services. Spielen Sie weiter und lernen Sie weiter. Prost!

Empfohlene Artikel

Dies war ein Leitfaden für Was ist AWS Lambda? In diesem Lernprogramm zur AWS Lambda-Funktion wurde das Konfigurieren und Bereitstellen der API erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Was ist AWS? | Wie funktioniert es?
  2. Karriere in Azure | Bildung | Karriereweg
  3. Leitfaden zu Cloud Computing-Diensten
  4. Was sind die Alternativen zu AWS?
  5. Vollständiger Leitfaden für Cloud Computing-Dienstleister

Kategorie: