इस सटीक प्रश्न का उत्तर देने का प्रयास करते समय मैंने जो पाया है वह यहां दिया गया है। यह शायद व्यापक नहीं है, और कुछ बिंदुओं पर गलत भी हो सकता है।
संक्षेप में, RQ को चारों ओर सरल बनाने के लिए डिज़ाइन किया गया है। अजवाइन को और अधिक मजबूत बनाने के लिए डिज़ाइन किया गया है। वे दोनों बेहतरीन हैं।
- दस्तावेज़ीकरण। RQ का प्रलेखन जटिल होने के बिना व्यापक है, और परियोजना की समग्र सादगी को दर्शाता है - आप कभी भी खोया या भ्रमित महसूस नहीं करते हैं। अजवाइन का दस्तावेज़ीकरण भी व्यापक है, लेकिन जब आप पहली बार चीजों को स्थापित कर रहे हैं तो इसे फिर से देखने की उम्मीद है क्योंकि आंतरिक बनाने के लिए बहुत सारे विकल्प हैं
-
निगरानी। अजवाइन का फूल और आरक्यू डैशबोर्ड दोनों सेटअप करने के लिए बहुत आसान हैं और आपको कम से कम 90% सभी जानकारी प्रदान करते हैं जो आप कभी भी चाहते हैं
-
ब्रोकर का समर्थन। अजवाइन स्पष्ट विजेता है, आरक्यू केवल रेडिस का समर्थन करता है। इसका मतलब है "एक दलाल क्या है" पर कम दस्तावेज, लेकिन इसका मतलब यह भी है कि यदि आप रेडिस अब आपके लिए काम नहीं करते हैं तो आप भविष्य में दलालों को स्विच नहीं कर सकते हैं। उदाहरण के लिए, इंस्टाग्राम ने सेलेरी के साथ रेडिस और रैबिटएमक्यू दोनों पर विचार किया। यह महत्वपूर्ण है क्योंकि विभिन्न दलालों की अलग-अलग गारंटी होती है उदा। रेडिस नहीं (लिखने के रूप में) 100% गारंटी है कि आपके संदेश वितरित किए गए हैं।
-
प्राथमिकता कतारें। आरक्यू प्राथमिकता कतार मॉडल सरल और प्रभावी है - कार्यकर्ता कतार से क्रम में पढ़ते हैं। अजवाइन को अलग-अलग कतारों से उपभोग करने के लिए कई श्रमिकों को कताई की आवश्यकता होती है। दोनों दृष्टिकोण काम करते हैं
-
ओएस समर्थन। अजवाइन यहाँ स्पष्ट विजेता है, क्योंकि RQ केवल उन सिस्टम पर चलता है जो
fork
. का समर्थन करते हैं जैसे यूनिक्स सिस्टम -
भाषा समर्थन। RQ केवल पायथन का समर्थन करता है, जबकि सेलेरी आपको एक भाषा से दूसरी भाषा में कार्य भेजने देता है
-
एपीआई। अजवाइन बेहद लचीला है (एकाधिक परिणाम बैकएंड, अच्छा कॉन्फ़िगरेशन प्रारूप, वर्कफ़्लो कैनवास समर्थन) लेकिन स्वाभाविक रूप से यह शक्ति भ्रमित हो सकती है। इसके विपरीत, आरक्यू एपीआई सरल है।
-
उपकार्य समर्थन। अजवाइन उप-कार्यों का समर्थन करता है (जैसे मौजूदा कार्यों के भीतर से नए कार्य बनाना)। मुझे नहीं पता कि आरक्यू करता है या नहीं
-
समुदाय और स्थिरता। अजवाइन शायद अधिक स्थापित है, लेकिन वे दोनों सक्रिय परियोजनाएं हैं। लेखन के समय, सेलेरी के जीथब पर ~3500 सितारे हैं जबकि आरक्यू में ~2000 हैं और दोनों परियोजनाएं सक्रिय विकास दिखाती हैं
मेरी राय में, अजवाइन उतनी जटिल नहीं है जितनी इसकी प्रतिष्ठा आपको विश्वास दिला सकती है, लेकिन आपको आरटीएफएम करना होगा।
तो, कोई आरक्यू के लिए (यकीनन अधिक पूर्ण विशेषताओं वाला) अजवाइन का व्यापार करने के लिए तैयार क्यों होगा? मेरे दिमाग में, यह सब सादगी के लिए नीचे आता है। खुद को Redis+Unix तक सीमित करके, RQ सरल दस्तावेज़ीकरण, सरल कोडबेस और एक सरल API प्रदान करता है। इसका मतलब है कि आप (और आपकी परियोजना में संभावित योगदानकर्ता) अपनी कार्यशील मेमोरी में कार्य कतार प्रणाली के बारे में विवरण रखने के बजाय, उस कोड पर ध्यान केंद्रित कर सकते हैं जिसकी आप परवाह करते हैं। हम सभी की एक सीमा होती है कि एक बार में हमारे सिर में कितने विवरण हो सकते हैं, और वहां कार्य कतार विवरण रखने की आवश्यकता को हटाकर RQ उस कोड पर वापस आ जाता है जिसकी आपको परवाह है। यह सरलता अंतर-भाषा कार्य कतारों, विस्तृत OS समर्थन, 100% विश्वसनीय संदेश गारंटी और संदेश दलालों को आसानी से स्विच करने की क्षमता जैसी सुविधाओं की कीमत पर आती है।