Εισαγωγή στο AWS Lambda για αρχάριους

Ας μάθουμε τις βασικές αρχές του AWS Lambda και πώς να εκτελούμε μια λειτουργία βήμα προς βήμα.

Εισαγωγή

Όταν δημιουργείτε εφαρμογές, θέλετε να προσφέρουν μια εξαιρετική εμπειρία χρήστη. Για να συμβεί το μαγικό, η εφαρμογή σας χρειάζεται έναν κώδικα υποστήριξης που εκτελείται ως απόκριση σε συμβάντα.

Ωστόσο, η διαχείριση της υποδομής για τη φιλοξενία και την εκτέλεση κώδικα υποστήριξης απαιτεί μέγεθος, παροχή και κλιμάκωση μιας δέσμης διακομιστών, διαχείριση ενημερώσεων λειτουργικού συστήματος, εφαρμογή ενημερώσεων κώδικα ασφαλείας και, στη συνέχεια, παρακολούθηση όλης αυτής της υποδομής για απόδοση και διαθεσιμότητα.

Δεν θα ήταν ωραίο αν μπορούσατε να εστιάσετε στη δημιουργία εξαιρετικών εφαρμογών χωρίς να χρειάζεται να ανησυχείτε για την υποδομή τους; Αυτό είναι όπου το AWS Lambda εμφανίζεται στην εικόνα.

Τι είναι το AWS Lambda;

AWS Λάμδα είναι μια υπολογιστική υπηρεσία χωρίς διακομιστή που σας επιτρέπει να εκτελείτε τον κώδικά σας χωρίς να ανησυχείτε για την παροχή ή τη διαχείριση οποιουδήποτε διακομιστή. Μπορείτε να εκτελέσετε την εφαρμογή ή την υπηρεσία υποστήριξης χρησιμοποιώντας το AWS Lambda με μηδενική διαχείριση. Απλώς ανεβάστε τον κώδικά σας στο Lambda και θα εκτελέσει τον κώδικά σας, ακόμη και θα κλιμακώσει την υποδομή με υψηλή διαθεσιμότητα.

Ο κώδικας που εκτελείτε στο AWS Lambda ονομάζεται συνάρτηση λάμδα. Προς το παρόν, υποστηρίζει τις ακόλουθες γλώσσες προγραμματισμού:

  • Ιάβα
  • Πύθων
  • ΝΤΟ#
  • Node.js
  • Πηγαίνω
  • PowerShell
  • Ρουμπίνι

Παρέχει επίσης ένα API χρόνου εκτέλεσης που μπορεί να χρησιμοποιηθεί για την εκτέλεση συναρτήσεων γραμμένων σε άλλες (εγγενείς) γλώσσες προγραμματισμού.

Για να εργαστείτε με το AWS Lambda, υπάρχει μόνο μία προϋπόθεση. θα πρέπει να έχετε έναν λογαριασμό στο AWS από όπου μπορείτε να αποκτήσετε πρόσβαση στην κονσόλα διαχείρισης AWS.

  Πώς να αποκτήσετε το Stock Gnome Shell στο Ubuntu 17.10

Μπορείτε να καλέσετε το Lambda is FaaS (Function-as-a-Service) από το AWS.

Χαρακτηριστικά AWS Lambda

Παρακάτω είναι μερικά από τα σημαντικά χαρακτηριστικά που προσφέρει το AWS Lambda:

  • Το AWS Lambda κλιμακώνει εύκολα την υποδομή χωρίς καμία πρόσθετη διαμόρφωση. Μειώνει το απαιτούμενο λειτουργικό έργο.
  • Προσφέρει πολλές επιλογές όπως AWS S3, CloudWatch, DynamoDB, API Gateway, Kinesis, CodeCommit και πολλές άλλες για την ενεργοποίηση ενός συμβάντος.
  • Δεν χρειάζεται να επενδύσετε εκ των προτέρων. Πληρώνετε μόνο για τη μνήμη που χρησιμοποιείται από τη λειτουργία λάμδα και ελάχιστο κόστος για τον αριθμό των αιτημάτων, άρα οικονομικά αποδοτικό.
  • Το AWS Lambda είναι ασφαλές. Χρησιμοποιεί το AWS IAM για να καθορίσει όλους τους ρόλους και τις πολιτικές ασφαλείας.
  • Προσφέρει ανοχή σφαλμάτων τόσο για τις υπηρεσίες που εκτελούν τον κώδικα όσο και για τη λειτουργία. Δεν χρειάζεται να ανησυχείτε για την πτώση της εφαρμογής.

Τιμολόγηση AWS Lambda

Η τιμολόγηση του AWS Lambda εξαρτάται από τη διάρκεια και τη μνήμη που χρησιμοποιείται από τη συνάρτηση λάμδα που έχετε γράψει. Το μέγιστο που μπορείτε να εκχωρήσετε είναι 3008 MB μνήμης σε μια λειτουργία λάμδα σε βήματα των 64 MB. Παρακάτω είναι ένας πίνακας τιμών με όλες τις πλάκες μνήμης για 100 χιλιοστά του δευτερολέπτου.

Πώς λειτουργεί το AWS Lambda;

  • Αρχικά, δημιουργείτε μια συνάρτηση και προσθέτετε βασικές πληροφορίες σε αυτήν, όπως τη γλώσσα προγραμματισμού που θα χρησιμοποιηθεί στη συνάρτηση.
  • Στη συνέχεια, γράφετε τον κώδικά σας στο πρόγραμμα επεξεργασίας λάμδα ή τον ανεβάζετε σε μια υποστηριζόμενη γλώσσα προγραμματισμού σε ένα αρχείο zip.
  • Μόλις μεταφορτωθεί ο κωδικός λάμδα, η υπηρεσία χειρίζεται όλη την κλίμακα χωρητικότητας, την επιδιόρθωση και τη διαχείριση της υποδομής.
  • Για να εκτελέσετε τον κώδικα, πρέπει να ενεργοποιήσετε τη λειτουργία λάμδα με μια εξωτερική υπηρεσία AWS, η οποία μπορεί να ενεργοποιήσει τη λειτουργία λάμδα. Για παράδειγμα, μπορεί να είναι ένας κάδος S3.
  • Μέσα σε λίγα δευτερόλεπτα, το λάμδα θα είναι έτοιμο να ενεργοποιήσει αυτόματα τη λειτουργία σας όταν συμβεί ένα συμβάν. Το AWS Lambda εκτελεί τον κώδικά σας όταν καλείται το συμβάν ενεργοποίησης. Διαχειρίζεται και παρακολουθεί τους διακομιστές για εσάς.
  • Εάν η συνάρτησή σας απαιτεί μεγάλη επεξεργαστική ισχύ, θα επιλέξει έναν τύπο παρουσίας που έχει περισσότερη επεξεργαστική ισχύ και μνήμη RAM ή, εάν ο κωδικός λάμδα εκτελείται μόνο για δύο δευτερόλεπτα, θα επιλέξει τη χαμηλότερη δυνατή παρουσία, η οποία εξοικονομεί χρήματα και χρόνο .
  8 Ερωτήσεις και απαντήσεις γωνιακής συνέντευξης [2022]

Έτσι, έτσι λειτουργεί εσωτερικά το AWS Lambda. Επιτρέψτε μου να σας δείξω ένα demo στο AWS Lambda.

Δημιουργία AWS Lambda Function

Θα δημιουργήσω ένα πολύ απλό παιχνίδι χρησιμοποιώντας τη συνάρτηση λάμδα στο Node.js για αυτό το άρθρο. Θα δημιουργήσω μια συνάρτηση λάμδα για να ρίξω ένα ζάρι, να δημιουργήσω έναν αριθμό τυχαία μεταξύ 1 και 6 και να τον εκτυπώσω.

  • Μεταβείτε στην κονσόλα διαχείρισης AWS και στη γραμμή αναζήτησης πληκτρολογήστε Lambda, κάντε κλικ στο Lambda.

  • Θα εμφανιστεί το παράθυρο συνάρτησης, κάντε κλικ στο Δημιουργία συνάρτησης.

  • Θα λάβετε διαφορετικές επιλογές για τη δημιουργία μιας συνάρτησης με την εξήγησή τους. Εφόσον το δημιουργώ από την αρχή, θα επιλέξω Συγγραφέας από το μηδέν.

  • Μετά από αυτό, πρέπει να συμπληρώσετε ορισμένες απαραίτητες πληροφορίες για αυτήν τη λειτουργία λάμδα. Εισαγάγετε το όνομα της συνάρτησης και επιλέξτε την έκδοση Node.js, την οποία θέλετε να χρησιμοποιήσετε για αυτήν τη λειτουργία.
  • Πρέπει επίσης να επιλέξετε έναν ρόλο εκτέλεσης. Εφόσον δεν έχω οριστεί κανένας υπάρχων ρόλος στον λογαριασμό μου στο AWS, θα προχωρήσω και θα επιλέξω τη δημιουργία νέου ρόλου. Κάντε κλικ στη λειτουργία Δημιουργία.

  • Θα λάβετε ένα μήνυμα επιτυχίας ότι το unction δημιουργήθηκε. Κάντε κλικ στο παράθυρο Σχεδιαστής για να το ελαχιστοποιήσετε.

  • Στη συνέχεια θα είναι το παράθυρο Κωδικός συνάρτησης.
  • Βάλτε τον κώδικα που αναφέρεται παρακάτω στο πρόγραμμα επεξεργασίας. Μπορείτε επίσης να ανεβάσετε τον κώδικα χρησιμοποιώντας το αρχείο zip, αλλά χρησιμοποιώ τον εσωτερικό επεξεργαστή κώδικα AWS.
  18 διαδικτυακά μαθήματα για την εκμάθηση τεχνητής νοημοσύνης (AI) το 2022

  • Είναι ένας απλός κωδικός που παίρνει τον αριθμό μόνο από το 1 έως το 6 και χρησιμοποιεί μια τυχαία μαθηματική συνάρτηση για να δημιουργήσει έναν αριθμό τυχαία και να τον εκτυπώσει όταν καλείται η συνάρτηση.
exports.handler = async (event) => {
const min = 1;
const max = 6;
const randomNum = Math.floor(Math.random() * (max - min + 1)) + min;
const out="Dice throw result is: " + randomNum;
return out;
};
  • Τώρα κάντε κλικ στο κουμπί Test στην επάνω δεξιά γωνία. Θα εμφανιστεί ένα αναδυόμενο παράθυρο για να διαμορφώσετε ένα δοκιμαστικό συμβάν, να εισαγάγετε ένα όνομα συμβάντος και να κάνετε κλικ στο configure.

  • Τώρα κάντε κλικ στο Save και μετά στο Test.

Στο Execution Result, θα δείτε την έξοδο της λογικής συνάρτησης που μόλις γράψαμε. Εκτυπώνει – Το αποτέλεσμα ρίψης ζαριών είναι 2.

  • Κάντε κύλιση προς τα πάνω και κάντε κλικ στα λεπτομερή αποτελέσματα εκτέλεσης για να λάβετε την πλήρη περίληψη αυτής της συνάρτησης λάμδα με την αναμενόμενη έξοδο. Διατίθενται επίσης λεπτομέρειες όπως το αναγνωριστικό αιτήματος, η διάρκεια, η διάρκεια χρέωσης, οι διαμορφωμένοι πόροι κ.λπ. με την έξοδο καταγραφής.

  • Κάντε κλικ στην καρτέλα παρακολούθησης για να οπτικοποιήσετε τα αρχεία καταγραφής του νέφους και την απόδοση της λειτουργίας λάμδα σε καθορισμένο χρόνο.

  • Εάν μπείτε μέσα στα αρχεία καταγραφής που δημιουργήθηκαν από το CloudWatch, μπορείτε να δείτε τις λεπτομέρειες του τι συνέβη κατά την εκτέλεση της συνάρτησης λάμδα, η οποία παρακολουθούνταν από το CloudWatch.

συμπέρασμα

Ξεκινώντας με το Lambda είναι πραγματικά εύκολο. Εάν η επιχειρηματική σας εφαρμογή απαιτεί την εκτέλεση κώδικα υποστήριξης, μπορείτε να σκεφτείτε να χρησιμοποιήσετε μια πλατφόρμα χωρίς διακομιστή όπως το AWS Lambda.

Σας άρεσε να διαβάζετε το άρθρο; Τι θα λέγατε να μοιράζεστε με τον κόσμο;