ארכיטקטורה N (רב שכבתית), 3 שכבות, דו שכבתית עם דוגמה

מהו N-Tier?

א יישום N-Tier התוכנית מופצת בין שלושה מחשבים נפרדים או יותר ברשת מבוזרת.

הצורה הנפוצה ביותר של n-tier היא יישום 3-שכבות, והיא מסווגת לשלוש קטגוריות.

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

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

ב שכבת N, 'N' מתייחס למספר שכבות או שכבות הנמצאות בשימוש כמו - 2 שכבות, 3 שכבות או 4 שכבות וכו ' . זה נקרא גם רב שכבתי ארכיטקטורה .

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

במדריך זה תלמד-

אדריכלות N-Tier

ייצוג דיאגרמטי של מערכת n-tier מתאר כאן-שכבות מצגות, יישומים ומסדי נתונים.

תרשים אדריכלות N -Tier



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

כמה מהאתרים הפופולריים שיישמו את האדריכלות הזו הם

  • MakeMyTrip.com
  • יישום ארגוני של כוח המכירות
  • רכבות הודיות - IRCTC
  • Amazon.com וכו '.

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

  • רשת מבוזרת: זוהי ארכיטקטורת רשת, שבה הרכיבים הממוקמים במחשבי הרשת מתאמים ומתקשרים את פעולותיהם רק על ידי העברת מסרים. זהו אוסף של מערכות מרובות הממוקמות בצמתים שונים אך נראה למשתמש כמערכת אחת.
    • הוא מספק רשת תקשורת נתונים אחת הניתנת לניהול בנפרד על ידי רשתות שונות.
    • דוגמה לרשת מבוזרת-שבה לקוחות שונים מחוברים בתוך ארכיטקטורת LAN בצד אחד ובצד השני הם מחוברים למתגים במהירות גבוהה יחד עם ארגון שרתים המכיל צמתים של שירות.
  • ארכיטקטורת שרת-לקוח: זהו מודל ארכיטקטורה שבו הלקוח (תוכנית אחת) מבקש שירות מהשרת (תוכנית אחרת) כְּלוֹמַר זהו שירות מענה לבקשות הניתן דרך האינטרנט או דרך אינטראנט.

    בדגם זה, לָקוּחַ ישמש כקבוצת תוכנה/קוד אחת המבצעת קבוצת פעולות ברשת. בזמן שרת , לעומת זאת, היא קבוצה של תוכנית אחרת, ששולחת את ערכות התוצאות למערכת הלקוח כמתבקש.

    • בכך, מחשב לקוח מספק ממשק למשתמש קצה לבקשת שירות או משאב מהשרת ומצד שני השרת מעבד את הבקשה ומציג את התוצאה למשתמש הקצה.
    • דוגמא למודל Client-Server-מכשיר כספומט. בנק הוא השרת לעיבוד היישום בתוך מסדי הנתונים של הלקוחות הגדולים ומכשיר הכספומט הוא הלקוח בעל ממשק משתמש עם כמה עיבוד אפליקציות פשוט.
  • פּלַטפוֹרמָה: בתעשיית מדעי המחשב או התוכנה, פלטפורמה היא מערכת שבה תוכנת יישומים יכולה לפעול. הוא מורכב משילוב של חומרה ותוכנה הכוללים הוראה מובנית עבור מעבדים/מעבדים לביצוע פעולות ספציפיות.
    • במילים פשוטות יותר, הפלטפורמה היא מערכת או בסיס שכל יישומים יכולים להריץ ולבצע כדי להשיג משימה מסוימת.
    • דוגמה לפלטפורמה - מכונה אישית טעונה עם Windows 2000 או Mac OS X כדוגמאות לשתי פלטפורמות שונות.
  • מאגר מידע: זהו אוסף מידע בצורה מאורגנת, כך שניתן יהיה לגשת אליו בקלות, לנהל ולעדכן אותו.
    • דוגמאות למסד נתונים - MySQL, SQL Server ובסיס הנתונים של אורקל הן כמה Db נפוצים.

סוגי ארכיטקטורות מסוג N

ישנם סוגים שונים של ארכיטקטורות N-Tier, כמו אדריכלות בת 3 שכבות, אדריכלות דו שכבתית וארכיטקטורה דו שכבתית.

ראשית, נראה אדריכלות בת 3 שכבות, וזה מאוד חשוב.

ארכיטקטורה בת שלוש שכבות

על ידי התבוננות בתרשים שלהלן תוכל לזהות זאת בקלות ארכיטקטורה בת 3 שכבות בעל שלוש שכבות שונות.

  • שכבת מצגת
  • שכבת לוגיקה עסקית
  • שכבת מסד נתונים

תרשים אדריכלות 3 שכבות

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

שכבת ממשק משתמש או שכבת מצגת

שכבת מצגת

private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e) { // Object of the Property layer clsStudent objproperty=new clsStudent(); // Object of the business layer clsStudentInfo objbs=new clsStudentInfo(); // Object of the dataset in which we receive the data sent by the business layer DataSet ds=new DataSet(); // here we are placing the value in the property using the object of the //property layer objproperty.id=int.Parse(DataGridl.SelectedItem.Cells[1].Text.ToString()); // In this following code we are calling a function from the business layer and // passing the object of the property layer which will carry the ID till the database. ds=objbs.GetAllStudentBsIDWise(objproperty); // What ever the data has been returned by the above function into the dataset //is being populate through the presentation laye. txtId.Text=ds.Tables[0].Rows[0][0].ToString(); txtFname.Text=ds.Tables[0].Rows[0][1].ToString(); txtAddress.Text=ds.Tables[0].Rows[0][2].ToString(); txtemail.Text=ds.Tables[0].Rows[0][3].ToString();

הסבר קוד

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

שכבת גישה לעסקים -

זוהי הפונקציה של השכבה העסקית המקבלת את הנתונים משכבת ​​היישום ומעבירה אותם לשכבת הנתונים.

  • ההיגיון העסקי משמש ממשק בין שכבת הלקוח לשכבת גישה לנתונים
  • כל ההיגיון העסקי - כמו אימות נתונים, חישובים, הכנסת/שינוי נתונים נכתב תחת שכבת לוגיקה עסקית.
  • זה הופך את התקשורת למהירה וקלה יותר בין הלקוח לשכבת הנתונים
  • מגדיר פעילות נכונה של זרימת עבודה הדרושה להשלמת משימה.
// this is the function of the business layer which accepts the data from the //application layer and passes it to the data layer. public class clsStudentInfo { public DataSet GetAllStudentBsIDWise(clsStudent obj) { DataSet ds=new DataSet(); ds=objdt.getdata_dtIDWise(obj);// Calling of Data layer function return ds; } }

הסבר על הקוד

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

שכבת גישה לנתונים

זוהי פונקציית שכבת הנתונים, המקבלת את הנתונים מהשכבה העסקית ומבצעת את הפעולה הדרושה לתוך מסד הנתונים. | _+_ |

הסבר על הקוד

הקוד מגדיר בשכבת הנתונים שלמעלה מקבל את כל הבקשה: המבוקשת על ידי המערכת וביצוע הפעולות הנדרשות למסד הנתונים.

אדריכלות דו שכבתית:

זה כמו ארכיטקטורת Client-Server, שבה מתקיימת תקשורת בין לקוח לשרת.

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

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

אדריכלות חד שכבתית או חד שכבתית:

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

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

יתרונות וחסרונות של ארכיטקטורות מרובות שכבות

יתרונות

חסרונות

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

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

טיפים ופיתוח ארכיטקטורה מסוג N

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

  1. נסה לנתק שכבות משכבה אחרת ככל שניתן על ידי שימוש בטכניקה כמו XML של סבון.
  2. השתמש בכמה כלים אוטומטיים ליצירת מיפוי בין שכבת לוגיקה עסקית לשכבת מסד נתונים יחסי (שכבת נתונים). כלים שיכולים לעזור במידול טכניקות המיפוי הללו הן - Entity Framework ו- Hibernate for .Net וכו '.
  3. בשכבת מגיש הלקוחות, הכנס קוד משותף לכל הלקוחות בספרייה נפרדת ככל האפשר. זה יגדיל את השימוש החוזר בקוד לכל סוגי הלקוחות.
  4. ניתן להוסיף שכבת מטמון לשכבה קיימת כדי להאיץ את הביצועים.

סיכום:

ארכיטקטורת ה- N-tier מסייעת בניהול כל הרכיבים (שכבה עסקית, שכבת מצגת ושכבת מסד נתונים) של יישום תחת קורת גג אחת.

יישומים שמשתמשים במספר קטן של משתמשים ברשת מקומית יכולים להפיק תועלת מארכיטקטורה של שכבות.

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