מה ההבדל בין תור הודעה לתור משימה? מדוע תור משימות יחייב מתווך הודעות כמו RabbitMQ, Redis, Celery או IronMQ כדי לתפקד?


תשובה 1:

גילוי נאות אני עובד

Iron.io | ספק שירותי יישומי ענן

הדעות הן שלי.

תור הודעה

תור משימות

Redis

, תור הודעה פתוח ממקור,

RabbitMQ

, תור הודעות שמתארח בעצמו פתוח ממקור,

SQS של אמזון

, תור הודעות מתארח

IronMQ

, תור הודעות שמתארח

סלרי

, תור משימות באחסון עצמי פתוח ממקור,

רווחה

, תור משימה פתוח ממקור,

IronWorker

, תור משימות מתארח והעיבוד -

עיכוב_ג'וב

, תור משימה פתוח ממקור,


תשובה 2:
האם יהיה זה נכון לומר ש"סלרי הוא תור / תור / תור לתוכנית הגוזל את המורכבות של הצורך לנהל את התור הפנימי ניהול / תור פעילויות ניהול וכו '? " אני מבין את שפת הספר שאומרת "סלרי הוא תור משימה" ו- "RabbitMQ הוא מתווך הודעות". עם זאת, זה נראה מעט מבלבל כמשתמש בסלרי בפעם הראשונה מכיוון שתמיד ידענו ש- RabbitMQ הוא 'התור'. אנא עזרו בהסבר כיצד / מה הסלרי עושה בניגוד ל rabbitMQ

אבו אשרף מסנון

https: //www.facebook.com/groups / ...

תור משימה ותור הודעה. RabbitMQ הוא "MQ". הוא מקבל הודעות ומעביר הודעות. סלרי הוא תור משימה. הוא מקבל משימות עם הנתונים הקשורים להם, מריץ אותם ומביא את התוצאות. בואו נשכח את הסלרי לרגע. בואו נדבר על RabbitMQ. מה היינו עושים בדרך כלל? אפליקציית Django / Flask שלנו תעביר הודעה לתור. יש לנו כמה עובדים שרצים שיחכו להודעות חדשות בתורים מסוימים. כשמגיעה הודעה חדשה היא מתחילה לעבוד ומעבדת את המשימות. סלרי מנהל את כל התהליך הזה בצורה נהדרת. איננו צריכים עוד ללמוד או לדאוג לפרטי AMQP או RabbitMQ. אנו יכולים להשתמש ב- Redis או אפילו בבסיס נתונים (MySQL למשל) כמתווך הודעות. סלרי מאפשר לנו להגדיר "משימות" עם קודי העובדים שלנו. כאשר אנו צריכים לעשות משהו ברקע (או אפילו בחזית), אנו יכולים פשוט לקרוא למשימה זו (לביצוע מיידי) או לתזמן משימה זו לעיבוד מאוחר. סלרי יטפל בהודעה המעבירה והפעלת המשימות. זה יפעיל עובדים שיודעים לנהל את המשימות שהוגדרו ולאחסן את התוצאות. כך שתוכלו לשאול אחר כך את תוצאת המשימה או אפילו את התקדמות המשימה בעת הצורך. אתה יכול להשתמש בסלרי כאלטרנטיבה לעבודות קרון מדי (אם כי אני לא ממש אוהב את זה)!

חואן פרנסיסקו קלדרון זומבה

https: //www.facebook.com/groups / ...

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

תשובה 3:
האם יהיה זה נכון לומר ש"סלרי הוא תור / תור / תור לתוכנית הגוזל את המורכבות של הצורך לנהל את התור הפנימי ניהול / תור פעילויות ניהול וכו '? " אני מבין את שפת הספר שאומרת "סלרי הוא תור משימה" ו- "RabbitMQ הוא מתווך הודעות". עם זאת, זה נראה מעט מבלבל כמשתמש בסלרי בפעם הראשונה מכיוון שתמיד ידענו ש- RabbitMQ הוא 'התור'. אנא עזרו בהסבר כיצד / מה הסלרי עושה בניגוד ל rabbitMQ

אבו אשרף מסנון

https: //www.facebook.com/groups / ...

תור משימה ותור הודעה. RabbitMQ הוא "MQ". הוא מקבל הודעות ומעביר הודעות. סלרי הוא תור משימה. הוא מקבל משימות עם הנתונים הקשורים להם, מריץ אותם ומביא את התוצאות. בואו נשכח את הסלרי לרגע. בואו נדבר על RabbitMQ. מה היינו עושים בדרך כלל? אפליקציית Django / Flask שלנו תעביר הודעה לתור. יש לנו כמה עובדים שרצים שיחכו להודעות חדשות בתורים מסוימים. כשמגיעה הודעה חדשה היא מתחילה לעבוד ומעבדת את המשימות. סלרי מנהל את כל התהליך הזה בצורה נהדרת. איננו צריכים עוד ללמוד או לדאוג לפרטי AMQP או RabbitMQ. אנו יכולים להשתמש ב- Redis או אפילו בבסיס נתונים (MySQL למשל) כמתווך הודעות. סלרי מאפשר לנו להגדיר "משימות" עם קודי העובדים שלנו. כאשר אנו צריכים לעשות משהו ברקע (או אפילו בחזית), אנו יכולים פשוט לקרוא למשימה זו (לביצוע מיידי) או לתזמן משימה זו לעיבוד מאוחר. סלרי יטפל בהודעה המעבירה והפעלת המשימות. זה יפעיל עובדים שיודעים לנהל את המשימות שהוגדרו ולאחסן את התוצאות. כך שתוכלו לשאול אחר כך את תוצאת המשימה או אפילו את התקדמות המשימה בעת הצורך. אתה יכול להשתמש בסלרי כאלטרנטיבה לעבודות קרון מדי (אם כי אני לא ממש אוהב את זה)!

חואן פרנסיסקו קלדרון זומבה

https: //www.facebook.com/groups / ...

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