תור JMS לעומת נושא JMS

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

מודלים להעברת הודעות

שני המודלים להעברת הודעות JMS הם פרסום והירשם ונקודה לנקודה. Publish-and-subscribe, או pub/sub, מאפשר למפיק לשלוח הודעות למשתמשים רבים בו-זמנית. צרכנים יכולים להירשם לנושא מסוים, או לערוץ, ולקבל את כל ההודעות בתוך הנושא הנבחר. דגם זה הוא אסינכרוני. נקודה לנקודה, או p2p, מאפשרת למשתמשים לשלוח הודעות גם באופן אסינכרוני וגם סינכרוני באמצעות ערוצים שונים הנקראים תורים. בדרך כלל, במודל p2p, משתמש מבקש הודעה שמפיק שולח לתור, במקום להירשם לערוץ ולקבל את כל ההודעות שנשלחות בנושא מסוים.

סרטון היום

ערוץ נושא

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

מערכת תורים

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

מטרה מקורית

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