Tutorial AWS Lambda: Ο οδηγός σας για υπολογιστές χωρίς διακομιστή Amazon



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

Tutorial AWS Lambda

Σήμερα πρόκειται να μιλήσουμε για το AWS Lambda. Το AWS Lambda είναι μια υπηρεσία υπολογιστών που προσφέρεται από την Amazon. Πρέπει να είστε περίεργοι, καθώς υπάρχουν πολλές άλλες υπηρεσίες υπολογιστών από την AWS, όπως AWS EC2, AWS Elastic Beanstalk, AWS Opsworks κ.λπ., τότε γιατί μια άλλη υπηρεσία υπολογιστών; Σε αυτό το σεμινάριο AWS Lambda θα ανακαλύψετε τι είναι το AWS Lambda, γιατί χρησιμοποιείται και σε ποιες περιπτώσεις χρήσης θα πρέπει να το εξετάσετε.

Ας δούμε πώς ο Amazon ορίζει το AWS Lambda και μετά θα ρίξουμε μια βαθιά βουτιά στις βασικές έννοιες, θα κατανοήσουμε μια περίπτωση χρήσης με μια πρακτική στο τέλος.





Υπολογισμός Lambda Serverless - aws lambda tutorial

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

Η Amazon εξηγεί, το AWS Lambda (& lambda) ως υπηρεσία υπολογιστών «χωρίς διακομιστή», που σημαίνει ότι οι προγραμματιστές, δεν χρειάζεται να ανησυχούν για τους πόρους AWS που θα ξεκινήσουν ή πώς θα τα διαχειριστούν, απλώς έβαλαν τον κώδικα στο lambda και τρέχει , είναι τόσο απλό! Σας βοηθά να εστιάσετε στην βασική ικανότητα, δηλαδή στο App Building ή στον κώδικα.



Πού θα χρησιμοποιήσω το AWS Lambda;

Το AWS Lambda εκτελεί τον κωδικό backend σας, διαχειρίζοντας αυτόματα τους πόρους AWS. Όταν λέμε «διαχείριση», περιλαμβάνει εκκίνηση ή τερματισμό παρουσιών, ελέγχους υγείας, αυτόματη κλιμάκωση, ενημέρωση ή επιδιόρθωση νέων ενημερώσεων κ.λπ.

Πως λειτουργεί, λοιπόν?

Ο κωδικός που θέλετε να εκτελεί η Λάμδα είναι γνωστός ως Λειτουργία λάμδα . Τώρα, όπως γνωρίζουμε ότι μια λειτουργία εκτελείται μόνο όταν καλείται, έτσι; Εδώ, Πηγή συμβάντος είναι η οντότητα που ενεργοποιεί μια συνάρτηση Lambda και, στη συνέχεια, η εργασία εκτελείται.

Ας πάρουμε ένα παράδειγμα για να το κατανοήσουμε πιο καθαρά.



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

Έτσι, αυτό το καθήκον της μεταφόρτωσης μιας εικόνας μπορεί να οριστεί ως Πηγή συμβάντος ή το 'trigger' που θα καλέσει τη Λειτουργία Lambda και έπειτα όλες αυτές οι εργασίες μπορούν να εκτελεστούν μέσω της λειτουργίας Lambda.

Σε αυτό το παράδειγμα, ένας προγραμματιστής πρέπει απλώς να ορίσει την πηγή του συμβάντος και να ανεβάσει τον κώδικα.

Ας κατανοήσουμε αυτό το παράδειγμα με πραγματικούς πόρους AWS τώρα,

Εικ. Θήκη χρήσης Lambda με S3

Εδώ θα ανεβάζουμε εικόνες με τη μορφή αντικειμένων σε έναν κάδο S3. Αυτή η μεταφόρτωση μιας εικόνας στον κάδο S3, θα γίνει πηγή συμβάντος ή η «σκανδάλη».

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

απλό πρόγραμμα ταξινόμησης συγχώνευσης στο c ++
  1. Ο χρήστης ανεβάζει μια εικόνα (αντικείμενο) σε έναν κάδο προέλευσης στο S3 που έχει συνημμένη ειδοποίηση για το Lambda.
  2. Η ειδοποίηση διαβάζεται από το S3 και αποφασίζει πού θα στείλει αυτήν την ειδοποίηση.
  3. Το S3 στέλνει την ειδοποίηση στο Lambda, αυτή η ειδοποίηση λειτουργεί ως κλήση επίκλησης της συνάρτησης lambda.
  4. Ο ρόλος εκτέλεσης στο Lambda μπορεί να καθοριστεί χρησιμοποιώντας το IAM (Identity and Access Management) για να δώσει άδεια πρόσβασης για τους πόρους AWS, για αυτό το παράδειγμα εδώ θα ήταν S3.
  5. Τέλος, επικαλείται την επιθυμητή συνάρτηση λάμδα που λειτουργεί στο αντικείμενο που έχει μεταφορτωθεί στον κάδο S3.

Εάν επρόκειτο να λύσετε αυτό το σενάριο παραδοσιακά, μαζί με την ανάπτυξη, θα έχετε προσλάβει άτομα για τη διαχείριση των ακόλουθων εργασιών:

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

Αυτό θα ήταν ένα δαπανηρό, κουραστικό και κουραστικό έργο, επομένως είναι δικαιολογημένη η ανάγκη για AWS Lambda.Το AWS Lambda είναι συμβατό με Node.JS, Python και Java, οπότε μπορείτε να ανεβάσετε το αρχείο σας με φερμουάρ, να ορίσετε μια πηγή συμβάντος και να είστε έτοιμοι!

Μπορείτε να διαβάσετε περισσότερα για S3 AWS εδώ για μια βαθύτερη κατανόηση.

Τώρα ξέρουμε -Πώς λειτουργεί η Λάμδα καιΤι κάνει η Λάμδα μικρό .

Νας, ας καταλάβουμε-

  • Πού να χρησιμοποιήσετε το Lambda;
  • Τι σκοπό εξυπηρετεί η Λάμδα, ότιάλλες υπηρεσίες AWS Compute δεν είναι;

Εάν επρόκειτο να δημιουργήσετε μια λύση σε ένα πρόβλημα, θα πρέπει να μπορείτε να προσδιορίσετε πού να χρησιμοποιήσετε το Lambda, σωστά;

Έτσι, ως αρχιτέκτονας έχετε τις ακόλουθες επιλογές για την εκτέλεση μιας εργασίας:

  • AWS EC2
  • AWS Elastic Beanstalk
  • AWS OpsWorks
  • AWS Λάμδα

Ας πάρουμε την παραπάνω περίπτωση χρήσης ως παράδειγμα και κατανοήστε γιατί επιλέξαμε τη Λάμδα για να την λύσουμε.

Τα AWS OpsWorks και AWS ElasticBeanstalk χρησιμοποιούνται για την ανάπτυξη μιας εφαρμογής, έτσι είναι η περίπτωση χρήσης μας δεν για να δημιουργήσετε μια εφαρμογή , αλλά για να εκτελέσετε έναν κώδικα back-end.

Τότε γιατί όχι το EC2;

Εάν επρόκειτο να χρησιμοποιήσετε το EC2, θα πρέπει να αρχίσετε να σχεδιάζετε τα πάντα, δηλαδή τον εξισορροπητή φόρτωσης, τους τόμους EBS, τις στοίβες λογισμικού κ.λπ. Στο lambda δεν χρειάζεται να ανησυχείτε για τίποτα, απλώς εισαγάγετε τον κωδικό σας και το AWS θα διαχειριστεί τα υπόλοιπα!

Για παράδειγμα , στο EC2 θα εγκαθιστούσατε τα πακέτα λογισμικού στην εικονική σας μηχανή που θα υποστηρίζουν τον κωδικό σας, αλλά στο Lambda δεν χρειάζεται να ανησυχείτε για οποιοδήποτε VM, απλώς εισαγάγετε απλό κώδικα και το Lambda θα το εκτελέσει για εσάς.

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

Για παράδειγμα , καταγράφοντας τη δραστηριότητα ηλεκτρονικού ταχυδρομείου, για παράδειγμα, μια μικρή εταιρεία, θα έβλεπε περισσότερη δραστηριότητα κατά τη διάρκεια της ημέρας από ό, τι στη νύχτα, επίσης θα μπορούσαν να υπάρχουν ημέρες όταν υπάρχουν λιγότερα μηνύματα προς επεξεργασία και μερικές φορές ολόκληρος ο κόσμος θα μπορούσε να αρχίσει να σας στέλνει email! Και στις δύο περιπτώσεις, η Lambda είναι στη διάθεσή σας.

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

Μπορείτε να διαβάσετε περισσότερα για EC2 AWS εδώ για μια βαθύτερη κατανόηση.

Περιορισμοί του AWS Lambda

Ορισμένοι περιορισμοί είναι συγκεκριμένοι για το υλικό και ορισμένοι δεσμεύονται από την αρχιτεκτονική, ας συζητήσουμε όλα αυτά.

Περιορισμοί υλικού Συμπεριλάβετε το μέγεθος του δίσκου, το οποίο περιορίζεται στα 512 MB, η μνήμη μπορεί να κυμαίνεται μεταξύ 128 MB και 1536 MB. Στη συνέχεια, υπάρχουν κάποια άλλα, όπως το χρονικό όριο εκτέλεσης που μπορεί να μεγιστοποιηθεί σε μόλις 5 λεπτά, το ωφέλιμο φορτίο του αιτήματός σας δεν μπορεί να υπερβαίνει τα 6 MB και το σώμα του αιτήματος σας είναι 128 KB. Το ωφέλιμο φορτίο αιτήματος είναι σαν τα δεδομένα που στέλνετε με αίτημα 'GET' ή 'PUT' στο HTTP, όπου ως σώμα αιτήματος θα ήταν ο τύπος του αιτήματος, οι κεφαλίδες κ.λπ.

πίνακας cassandra έναντι οικογένειας στηλών

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

Συζητήσαμε σε αυτό το AWS Lambda Tutorial ότι ο τρόπος με τον οποίο οι εργασίες στο Lambda «δεν είναι» κουραστικές και κουραστικές. Ας καλύψουμε τώρα το τμήμα εξόδων επίσης.

Τιμές σε AWS Lambda

Όπως και οι περισσότερες υπηρεσίες AWS, το AWS Lambda είναι επίσης υπηρεσία πληρωμής ανά χρήση, που σημαίνει ότι πληρώνετε μόνο αυτό που χρησιμοποιείτε, επομένως χρεώνεστε με τις ακόλουθες παραμέτρους

  • Ο αριθμός των αιτήσεων που κάνετε στη λειτουργία λάμδα σας
  • ο διάρκεια για την οποία εκτελείται ο κώδικάς σας.

Αιτήσεων

  • Χρεώνεστε για τον αριθμό των αιτημάτων που υποβάλλετε σε όλες τις λειτουργίες lambda.
  • Το AWS Lambda μετρά ένα αίτημα κάθε φορά που αρχίζει να εκτελείται σε απάντηση σε μια πηγή συμβάντος ή σε μια κλήση επίκλησης, συμπεριλαμβανομένης της δοκιμής που καλείται από την κονσόλα. Ας δούμε τώρα τις τιμές:
    • Τα πρώτα 1 εκατομμύρια αιτήματα, κάθε μήνα είναι δωρεάν.
    • 0,20 $ ανά εκατομμύριο αιτήσεις στη συνέχεια.

Διάρκεια

  • Η διάρκεια υπολογίζεται από τη στιγμή που ο κώδικάς σας αρχίζει να εκτελείται έως τη στιγμή που επιστρέφει ή τερματίζεται, στρογγυλοποιείται στα πλησιέστερα 100ms.
  • Η τιμή εξαρτάται από το μέγεθος της μνήμης που διαθέτετε στη λειτουργία σας, χρεώνεστε 0,00001667 $ για κάθε GB-δευτερόλεπτο που χρησιμοποιείται.

* Πηγή: Επίσημος ιστότοπος AWS

Εάν έχετε φτάσει μέχρι εδώ, είστε έτοιμοι για ένα Hands-on στο Lambda. Ας διασκεδάσουμε!

Hands-on: AWS Lambda DIY

Ας δημιουργήσουμε μια συνάρτηση Lambda που θα καταγράφει 'Ένα αντικείμενο έχει προστεθεί' μόλις προσθέσετε ένα αντικείμενο σε έναν συγκεκριμένο κάδο στο S3.

Βήμα 1: Από την AWS Management Console στην ενότητα υπολογισμού, επιλέξτε AWS Lambda.

Βήμα 2: Στην AWS Lambda Console, κάντε κλικ στο 'Δημιουργία λειτουργίας Lambda'.

Βήμα 3: Στην επόμενη σελίδα, πρέπει να επιλέξετε ένα σχεδιάγραμμα. Για παράδειγμα, θα επιλέξουμε την κενή συνάρτηση για τη θήκη χρήσης.

Βήμα 4: Στην επόμενη σελίδα θα (1) ορίσετε μια σκανδάλη, καθώς πρόκειται να εργαστούμε στο S3, (2) επιλέξτε την σκανδάλη S3 και στη συνέχεια (3) κάντε κλικ στο Επόμενο.

Βήμα 5: Στη σελίδα διαμόρφωσης, συμπληρώστε τις λεπτομέρειες. Μπορείτε να βάλετε τον δικό σας κωδικό ή μπορείτε να αντιγράψετε τον ίδιο κωδικό από αυτήν τη θήκη χρήσης. Μετά από αυτό, συμπληρώστε τον χειριστή και τον ρόλο, αφήστε τις σύνθετες ρυθμίσεις όπως είναι, στο τέλος κάντε κλικ στο επόμενο.

Βήμα 6: Στην επόμενη σελίδα, ελέγξτε όλες τις πληροφορίες και κάντε κλικ στο 'Δημιουργία λειτουργίας'.

Βήμα 7: Τώρα, αφού δημιουργήσαμε τη λειτουργία για τον κάδο S3, τη στιγμή που προσθέτετε ένα αρχείο στον κάδο S3, θα πρέπει να λάβετε ένα αρχείο καταγραφής για το ίδιο στο CloudWatch, το οποίο είναι μια υπηρεσία παρακολούθησης από την AWS.

Συγχαρητήρια!Έχετε εκτελέσει με επιτυχία τη Λειτουργία Lambda.

φροντιστήριο servicenow για αρχάριους pdf

Ελπίζω να απολαύσατε τη βαθιά βουτιά στο AWS Lambda Tutorial. Είναι ένας από τους πιο επιθυμητούς τομείς γνώσης στο οικοσύστημα AWS για θέσεις εργασίας, όπως Solutions Architect, Cloud Engineer, DevOps Engineer. Εδώ είναι μια συλλογή από για να σας βοηθήσουμε να προετοιμαστείτε για την επόμενη συνέντευξη εργασίας σας στο AWS.

Αν θεωρήσατε αυτό το AWS Lambda Tutorial σχετικό, μπορείτε να δείτε το μάθημα του Edureka με ζωντανή καθοδήγηση , συν-δημιουργήθηκε από επαγγελματίες του κλάδου.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων και θα επικοινωνήσουμε μαζί σας.