טכנולוגיית הקפה

תוכנות אינטרנט
בכל תקופה, בעולם המיחשוב, ישנה טכנולוגיה או שפה אשר נותנת את אותותיה באופן במשמעותי ביותר על עולם המחשוב כולו. ללא ספק כבר מספר שנים שחברת SUN, מכתיבה סטנדרטים ונורמות לכלל חברות המחשוב בעולם. מאז השקתה של Java בשנת 1995 מפתיעה חברת SUN בכל גירסה ומוסיפה יכולות חדשות, אשר לרוב, משנות את אופן ההסתכלות של שאר העולם על בעיות. במאמר זה נסקור את טכנולוגיית ה- RMI. Remote Method Invocation, הינה השיטה המיטבית של JAVA להפעלת תהליכים מבוזרים. עד להשקתה של שיטה זו נאלץ התוכניתן אשר רוצה לפצל תהליך בין מספר מחשבים    (Applet ושרת, שני שרתים וכיו"ב) להתמודד עם פרוטוקולי התקשורת השונים, לשטח את כל האובייקטים המועברים ברשת (Serialize) ולחלק את בתהליך באופן ברור בין המחשבים.  ה- RMI מאפשרת כיום לתוכניתן לשלוח אובייקט ממחשב אחד אל מחשב אחר, להריצו במחשב היעד ולהחזיר את התוצאות אל מחשב הלקוח. זאת כמובן מבלי לטפל בשליחת האובייקטים ובחלוקת התהליך בין המחשבים.

RMI אשר מיושמת במלואה בטכנולוגיית EJB (=Enterprise Java Beans, אשר תיסקר במאמר הבא) מהווה בימים אלה את האורות והתומים בכל הנוגע לתהליכי מחשוב מבוזרים בסביבת JAVA. מיותר כמובן יהיה לציין כי בשל כך איננו תלויים בפלטפורמה של כל מחשב ומחשב המשתתף בתהליך.

טכנולוגית RMI מאפשרת להסתכל על חוות השרתים כשם שאנו מסתכלים על מחשב אחד. מיקום שירות הרצת אובייקטים במערכת (RMI Server) הינו שקוף למתכנת, כל עוד שמו רשום במערכת ה-RMI (RMI Registry). ובשל כך אנו יכולים להעלות בתחילה את המערכת כאשר כל השירותים מרוכזים ומחשב אחד, אשר מספיק לדרישות האתר. אולם לאחר מכן, עם עליית פעילות האתר והופעת צווארי בקבוק, אנו יכולים לפצל את השירותים מבלי שנאלץ לשנות ולו שורת קוד אחת. זוהי משאלתם של כל תוכניתני ה- Start-up אשר אינם מעוניינים להשקיע סכומי כסף גבוהים על חומרה עוד בטרם עליית המוצר לאוויר.

אופן ההסתכלות על תהליך RMI מחולק למספר רכיבים:

RMI Serve – הינו שרת כללי, אשר בכתיבתו לא מתוארים התהליכים שיהיה עליו להריץ. שרת זה יטפל בהחזקת קשרי מסד נתונים (DB Connections) ושאר משאבים נדרשים, אולם בתגובה לקבלת פניית לקוח (Request) כל שיבצע הוא הפעלת Method ספציפית באובייקט המתקבל.

RMI Object – הינו האובייקט הנשלח מהלקוח אל ה- RMI Server, האובייקט מכיל את כל המידע הדרוש להפעלת התהליך הרצוי וכן את הגדרת התהליך עצמו. אנו מחוייבים ליישם בו Method בשם Execute אשר מהווה את הלוגיקה של האובייקט והוא מופעל ע"י השרת.

Client – פניית הלקוח אל ה- RMI Server שונה בתכלית מפניה לשרת רגיל מאחר ובאחריות הלקוח ליצור את ה- RMI Object ולשלוח אותו אל השרת.

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

 
דף בית: אינטרנט כל הזכויות שמורות ל InterSpace Hosting בע"מ Home: Internet