שרת

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

למונח שרתאנגלית: Server) שתי משמעויות הקשורות קשר הדוק ביניהן:

  • שרת הוא גם מחשב המריץ תוכנת שרת (אחת או יותר), ומספק שירותים למחשבים אחרים. לרוב, דרישות החומרה ממחשב זה גבוהות יותר מדרישות החומרה עבור מחשב שולחני רגיל שאיננו מתפקד כשרת. בנוסף, עשויות להיות דרישות מיוחדות בתחומי הזמינות, השרידות, הגיבוי ועוד.
  • שרת הוא תוכנת מחשב המספקת שירותים לתוכנות אחרות, המכונות תוכנות לקוח (Client).

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

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

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

מערכות הפעלה מקובלות לשרתים הן Windows NT Server לדורותיה, יוניקס ולינוקס.

ארכיטקטורת שרת-לקוח עוסקת בחלוקת העבודה בין השרתים ובין תוכנות הלקוח (client) הפונות אליה.

סוגי שרתים

  • שרת הדפסה, שתפקידו לקבל הדפסות מהמחשבים שברשת ולנתב אותן למדפסות המחוברות לרשת.
  • שרת קבצים, שתפקידו לאחסן קבצים עבור משתמשי הרשת. אחסון הקבצים בשרת מאפשר שיתוף קבצים בין משתמשים שונים.
  • שרת יישומים, המקל על פיתוח תוכנה מבוזרת.
  • שרת בסיס נתונים, שמאחסן את תוכנת בסיס הנתונים ואת בסיס הנתונים.
  • שרת דואר אלקטרוני, שתפקידו לקבל ולשלוח דואר אלקטרוני. בולטים בתחום זה השרתים MS-Exchange ו-Lotus Domino.
  • שרת פקס, מאפשר שליחה וקבלה של פקסים ממספר משתמשים בו זמנית באמצעות מחשב מרכזי.
  • שרת HTTP, מספק דפי HTML וקבצים נלווים לאתרי אינטרנט. בולטים בתחום זה Apache ו-IIS.
  • שרת פרוקסי, שימוש בשרת זה מאפשר שיפור מהירות תעבורת נתונים מהשרת למחשב הקצה.
  • שרת DNS, שרת הממיר שם תחום לכתובת אינטרנט (כתובת IP).
  • שרת Active Directory, שרת המאפשר לאמת משתמשים ומחשבים ברשת פנימית, וכן לקבוע את הרשאותיהם.
  • שרת תוכנה - שרת שמאפשר למשתמשים להשתמש בתוכנה מסוימת שאיננה ברשימה הנ"ל.