מדריך AWS למבדה: המדריך שלך למחשוב ללא שרתים של אמזון



מדריך זה של AWS למבדה מתאר פלטפורמת מחשוב ללא שרת של AWS המכסה פרטים על פונקציית למבדה, מקור אירועים, תמחור למבדה עם מקרה שימוש.

מדריך AWS למבדה

היום נדבר על AWS למבדה. AWS למבה הוא שירות חישוב שמציעה אמזון. עליכם להיות סקרנים מכיוון שישנם כמה שירותי מחשוב אחרים מ- AWS, כגון AWS EC2, AWS Elastic Beanstalk, AWS Opsworks וכו ', אז למה שירות מחשוב אחר? במדריך זה של AWS Lambda תוכלו לגלות מהו AWS Lambda, מדוע משתמשים בו ובאילו מקרי שימוש עליכם לשקול זאת.

בואו נראה איך אמזון מגדירה את AWS למבדה ואז נצלול עמוק למושגי המפתח, נבין מקרה שימוש בסופו של דבר עם הידיים.





מחשוב ללא שרת למבה - מדריך aws lambda

מהי AWS למבדה?

אמזון מסבירה, AWS Lambda (& lambda) כשירות מחשוב 'ללא שרתים', כלומר המפתחים, לא צריכים לדאוג אילו משאבי AWS יש להפעיל, או איך הם ינהלו אותם, הם פשוט שמים את הקוד על lambda והוא פועל , זה כזה פשוט! זה עוזר לך להתמקד בכושר הליבה כלומר בניית אפליקציות או בקוד.



היכן אשתמש ב- AWS למבדה?

AWS Lambda מבצע את קוד ה- backend שלך על ידי ניהול אוטומטי של משאבי AWS. כשאנחנו אומרים 'לנהל', זה כולל הפעלה או סיום של מקרים, בדיקות בריאות, קנה מידה אוטומטי, עדכון או תיקון עדכונים חדשים וכו '.

אז איך זה עובד?

הקוד שברצונך שלמבדה יפעל ידוע בשם פונקצית למבדה . עכשיו, כידוע, פונקציה פועלת רק כשהיא נקראת, נכון? כאן, מקור האירוע היא הישות שמפעילה פונקציית למבדה ואז המשימה מתבצעת.

בואו ניקח דוגמא כדי להבין את זה בצורה ברורה יותר.



נניח שיש לך אפליקציה להעלאת תמונות. כעת כשאתה מעלה תמונה, יש הרבה משימות הכרוכות לפני האחסון שלה, כגון שינוי גודל, החלת פילטרים, דחיסה וכו '.

אז, ניתן להגדיר את המשימה הזו של העלאת תמונה כ- מקור האירוע או ה'טריגר 'שיקרא לפונקציית למבדה, ואז ניתן לבצע את כל המשימות הללו באמצעות פונקציית למבדה.

בדוגמה זו, מפתח רק צריך להגדיר את מקור האירוע ולהעלות את הקוד.

בואו להבין את הדוגמה הזו עם משאבי AWS אמיתיים עכשיו,

איור מקרה שימוש למבדה עם S3

כאן נעלה תמונות בצורת אובייקטים לדלי S3. העלאת תמונה לדלי S3, תהפוך למקור אירוע או ל'טריגר '.

התהליך כולו, כפי שניתן לראות בתרשים, מחולק ל -5 שלבים, בואו נבין כל אחד מהם.

  1. המשתמש מעלה תמונה (אובייקט) לדלי המקור ב- S3 שמצורפת אליו הודעה עבור Lambda.
  2. ההודעה נקראת על ידי S3 והיא מחליטה לאן לשלוח את ההודעה.
  3. S3 שולח את ההודעה לממבה, הודעה זו משמשת כהפעלה של פונקציית למבדה.
  4. ניתן להגדיר את תפקיד הביצוע ב- Lambda על ידי שימוש ב- IAM (Identity and Access Management) בכדי לתת הרשאת גישה למשאבי ה- AWS, לדוגמא זו כאן תהיה S3.
  5. לבסוף, היא מפעילה את פונקציית הלמדה הרצויה שעובדת על האובייקט שהועלה לדלי S3.

אם היית פותר תרחיש זה באופן מסורתי, יחד עם פיתוח, היית שוכר אנשים לניהול המשימות הבאות:

  • גודל, אספקה ​​והגדלת קבוצת השרתים
  • ניהול עדכוני מערכת הפעלה
  • החל טלאי אבטחה ו
  • עקוב אחר כל התשתית הזו לביצועים וזמינות.

זו הייתה משימה יקרה, מייגעת ומייגעת, ולכן הצורך ב- AWS למבדה מוצדק.AWS Lambda תואם ל- Node.JS, Python ו- Java, כך שתוכלו להעלות את הקובץ שלכם ב- zip, להגדיר מקור אירוע ואתם מסודרים!

אתה יכול לקרוא עוד על S3 AWS כאן להבנה מעמיקה יותר.

עכשיו אנחנו יודעים -איך למבה עובדת ואיזו איילה למבדה ס .

מהו אקשן מאזין בג'אווה

נבואו, בואו נבין-

  • היכן להשתמש במבדה?
  • איזו מטרה למבה משרת, זאתשירותי מחשוב AWS אחרים לא?

אם היית מתכנן פיתרון לבעיה, אתה אמור להיות מסוגל לזהות היכן להשתמש במבדה, נכון?

לכן, כאדריכל עומדות בפניך האפשרויות הבאות לבצע משימה:

  • AWS EC2
  • AWS שעועית אלסטית
  • AWS OpsWorks
  • AWS למבדה

בואו ניקח את מקרה השימוש לעיל כדוגמה ונבין מדוע בחרנו במבדה לפתור אותה.

AWS OpsWorks ו- AWS ElasticBeanstalk משמשים לפריסת אפליקציה, כך שמקרה השימוש שלנו הוא לֹא כדי ליצור אפליקציה , אלא לבצע קוד עורפי.

אז למה לא EC2?

אם היית משתמש ב- EC2, תצטרך לארכיטקט הכל, כלומר איזון עומסים, אמצעי אחסון של EBS, ערימות תוכנה וכו 'בלמבה אתה לא צריך לדאוג לשום דבר, פשוט הכנס את הקוד שלך, ו- AWS ינהל את השאר!

לדוגמה , ב- EC2 היית מתקין את חבילות התוכנה במחשב הווירטואלי שלך אשר יתמוך בקוד שלך, אך ב- Lambda אתה לא צריך לדאוג לאף VM, פשוט הכנס קוד רגיל ו- Lambda יבצע אותו בשבילך.

אבל אם הקוד שלך יפעל שעות, ואתה מצפה לזרם רציף של בקשות, אתה כנראה צריך ללכת עם EC2, מכיוון שהארכיטקטורה של למבה נועדה לעומס עבודה ספורדי, בו יהיו כמה שעות שקטות וכמה קוצים. בלא. גם של בקשות.

לדוגמה , רישום פעילות הדוא'ל למשל חברה קטנה, תראה יותר פעילות במהלך היום מאשר בלילה, יכול להיות שיש ימים שבהם יש פחות דוא'ל לעיבוד, ולפעמים כל העולם יכול להתחיל לשלוח לך דוא'ל! בשני המקרים למבדה עומדת לשירותכם.

אם ניקח בחשבון מקרה שימוש זה עבור חברת רשת חברתית גדולה, שבה המיילים לא נגמרים משום שיש לה בסיס משתמשים עצום, ייתכן שמבדה אינה הבחירה המתאימה.

כיצד להשתמש בשיטת הפיצול ב- Java

אתה יכול לקרוא עוד על EC2 AWS כאן להבנה מעמיקה יותר.

מגבלות של AWS למבדה

חלק מהמגבלות הן ספציפיות לחומרה וחלקן קשורות לארכיטקטורה, בואו נדון בכולן.

מגבלות חומרה לכלול את גודל הדיסק, המוגבל ל -512 מגה-בייט, הזיכרון יכול לנוע בין 128 מגה-בייט ל -1536 מגה-בייט. יש עוד כמה כאלה, כגון שניתן להגדיל את זמן הקצוב לביצוע ל -5 דקות בלבד, המטען של גוף הבקשה שלך יכול להיות לא יותר מ -6 מגה-בייט וגוף הבקשה שלך הוא 128 קילו-בתים. מטען המטען של גוף הבקשה הוא כמו הנתונים שאתה שולח עם בקשת 'GET' או 'PUT' ב- HTTP, כאשר גוף הבקשה יהיה סוג הבקשה, הכותרות וכו '.

למעשה, אלה אינן מגבלות, אלא הן גבולות העיצוב שנקבעו בארכיטקטורה של למבה, כך שאם מקרה השימוש שלך אינו מתאים להן, תמיד עומדים לרשותך שירותי המחשוב האחרים של AWS.

דנו במדריך למבדה זה של AWS כי אופן ביצוע המשימות בממבה 'לא' מייגע ומייגע. בואו נכסה כעת גם את חלק ההוצאות.

תמחור ב- AWS למבדה

כמו רוב שירותי AWS, AWS למבה הוא גם שירות תשלום לשימוש, כלומר אתה משלם רק את מה שאתה משתמש בו, ולכן אתה מחויב בפרמטרים הבאים

  • מספר ה בקשות שאתה עושה לתפקוד למבדה שלך
  • ה מֶשֶׁך שעבורו הקוד שלך מבצע.

בקשות

  • אתה מחויב בגין מספר הבקשות שאתה מגיש בכל פונקציות הלמדה שלך.
  • AWS Lambda סופרת בקשה בכל פעם שהיא מתחילה לבצע בתגובה למקור אירוע או להפעיל שיחה, כולל הבדיקה המופעלת מהקונסולה. בואו נסתכל על המחירים עכשיו:
    • מיליון בקשות ראשונות, כל חודש הן בחינם.
    • 0.20 $ למיליון בקשות לאחר מכן.

מֶשֶׁך

  • משך הזמן מחושב מרגע שהקוד שלך מתחיל להופיע ועד לרגע שהוא חוזר או מסתיים, הוא מעוגל למעלה ל -100 ms הקרובים ביותר.
  • המחיר תלוי בכמות הזיכרון שאתה מקצה לפונקציה שלך, אתה מחויב בסך 0.00001667 $ עבור כל GB שנייה.

* מקור: האתר הרשמי של AWS

אם הגעת עד לכאן אתה מוכן למעשי יד במלבדה. בוא נעשה קצת כיף!

ג'אווה מה זה סורק

מעשי: AWS Lambda DIY

בואו ניצור פונקציית למבדה שתתחבר 'אובייקט נוסף' לאחר שתוסיף אובייקט לדלי ספציפי ב- S3.

שלב 1: מתוך קונסולת הניהול של AWS תחת סעיף המחשוב, בחר AWS למבדה.

שלב 2: במסוף למבדה של AWS, לחץ על 'צור פונקציה למבדה'.

שלב 3: בעמוד הבא עליך לבחור שרטוט. לדוגמא, אנו נבחר את הפונקציה הריקה למקרה השימוש שלנו.

שלב 4: בעמוד הבא תקבע (1) טריגר, מכיוון שאנחנו הולכים לעבוד על S3, (2) בחר את ההדק S3 ואז (3) לחץ על הבא.

שלב 5: בדף התצורה מלא את הפרטים. אתה יכול לשים קוד משלך, או להעתיק את אותו קוד ממקרה השימוש הזה. לאחר מכן, מלא את המטפל ואת התפקיד, השאר את ההגדרות המתקדמות כפי שהן, בסוף לחץ על הבא.

שלב 6: בדף הבא סקור את כל המידע ולחץ על 'צור פונקציה'.

שלב 7: כעת, מכיוון שיצרנו את הפונקציה עבור דלי S3, ברגע שתוסיף קובץ לדלי S3 שלך, אתה אמור לקבל יומן עבור אותו ב- CloudWatch, שהוא שירות ניטור של AWS.

מזל טוב!ביצעת בהצלחה את פונקציית למבה.

אני מקווה שנהניתם מהצלילה העמוקה לתוך הדרכה למוודה של AWS. זהו אחד מתחומי הידע המבוקשים ביותר במערכת האקולוגית של AWS לתפקידי תפקידים כגון אדריכל פתרונות, מהנדס ענן, מהנדס DevOps. הנה אוסף של כדי לעזור לך להתכונן לראיון העבודה הבא שלך ב- AWS.

אם גיליתם כי מדריך AWS Lambda זה רלוונטי, תוכלו לבדוק את הקורס החי והמדריך של אדוריקה בנושא , נוצר במשותף על ידי מתרגלים בתעשייה.

יש לך שאלה עבורנו? אנא הזכיר זאת בסעיף ההערות ונחזור אליך.