2010-04-23 29 views
7

मैं वर्तमान में क्वार्ट्ज शेड्यूलर का उपयोग अतुल्यकालिक कार्यों के लिए कर रहा हूं जैसे अपवाद होने पर ईमेल भेजना, वेब इंटरफ़ेस से ईमेल भेजना, या समय-समय पर यातायात का विश्लेषण करना।संदेश कतार या शेड्यूलर

क्या मुझे ईमेल भेजने के लिए संदेश कतार का उपयोग करना चाहिए? क्या यह इस तरह से करने के लिए कोई और अधिक कुशल या सही है? शेड्यूलर दृष्टिकोण बस ठीक काम करता है।

यदि मैं एक कतार का उपयोग करता हूं और ईमेल भेजने में विफल रहता है, तो क्या कतार के लिए बाद में ईमेल भेजने का पुनः प्रयास करना संभव है? कतार दृष्टिकोण उन कार्यों के लिए शेड्यूलर से सरल दिखता है जो तुरंत होने की आवश्यकता होती है, लेकिन शेड्यूलर कार्यों के लिए, शेड्यूलर अभी भी, जब तक कि कतार में अधिक नहीं है, मुझे पता है।

मैंने अभी तक जेएमएस का उपयोग नहीं किया है, इसलिए मैंने यही पढ़ा है।

वाल्टर

उत्तर

2

वे वास्तव में अलग हैं और यह उस उद्देश्य और आवृत्ति पर निर्भर करता है जिसे आप एक ईमेल भेजना चाहते हैं। शेड्यूलर एक ऐसी घटना उत्पन्न करता है जो समय आधारित है और फिर ईमेल भेजने के लिए कुछ कोड चलाता है। एक कतार में किसी ईवेंट को ट्रिगर करने का कोई तरीका नहीं है, इसे किसी संदेश से कहीं भी एक संदेश रखना होगा और फिर एक संदेशसूची एक ईमेल भेजें।

अपने प्रश्न का उत्तर देने एक कतार

  1. संदेश वापस पर कतार, अगर आपरेशन में विफल रहता है डाल करने की जरूरत है भले ही एसएमटीपी अगर पता नहीं है एक ईमेल भेजने के लिए एक अच्छा साधन है ईमेल इसके गंतव्य तक पहुंच गया।
  2. कुछ ट्रिगर कतार पर एक संदेश डाल सकते हैं।

शेड्यूलर कुछ जावा कोड को एक निश्चित अंतराल पर चला सकता है और इसलिए अस्थायी घटनाएं उत्पन्न करता है। यदि आप आवधिक ईमेल भेजना चाहते हैं तो शेड्यूलर जाने का तरीका है।

यदि आप शेड्यूलर के साथ जाते हैं तो आपको शेड्यूलर को कतार पर एक संदेश रखना चाहिए। यदि नहीं तो आपको कुछ अन्य ट्रिगर को कतार पर एक संदेश रखने की आवश्यकता है।

+0

रोमैन देखें - यह अच्छा लगता है। मैंने आपकी टिप्पणी स्वीकार कर ली क्योंकि यह थोड़ा और वर्णनात्मक है। मुझे लगता है कि मैं तब एक कतार के साथ जाऊंगा। अगर ईमेल भेजने में विफल रहता है, तो मेरा विफलता मोड किसी अन्य प्रकार की अधिसूचना का प्रयास करेगा। –

+1

@ वाल्टर व्हाइट ईमेल गारंटीकृत डिलीवरी सिस्टम नहीं है। अगर आपको यह ईमेल देना होगा तो आपके पास कई विकल्प हैं। 1) इसे अपनी वेबसाइट पर पोस्ट करें और व्यक्ति को साइन इन करें और अपने खाते के अपडेट को देखें। 2) यदि आप मेल प्राप्त करते हैं तो उन्हें क्लिक करने के लिए अपने ईमेल में एक यूआरएल रखें, यदि आवधिक आधार पर नहीं भेजते हैं। अभी भी गारंटी नहीं है, आपको पता है कि यह कब मिला। 3) ईमेल के साथ एक पत्र भेजें (मान लें कि यह बैंक से खाता जानकारी है) यदि आवश्यक हो तो पत्र पंजीकृत किया जा सकता है। 2) –

+0

मुझे वास्तव में क्वार्ट्ज जैसे शेड्यूलर का उपयोग करने के लिए एक अच्छा फिट मिल रहा है; लगातार उपयोग करते समय, वे शटडाउन से बचेंगे, और इसमें एक प्राकृतिक पुन: प्रयास-तंत्र बनाया गया है। – Eelco

2

एक कतार ईमेल जैसी चीजों को भेजने के लिए एक और अधिक प्राकृतिक विकल्प होगा। क्वार्ट्ज इसमें जूता-सींग हो सकता है लेकिन जब आप चीजों की तरह चीजें करते हैं तो यह एक प्राकृतिक फिट नहीं है। एक शेड्यूलर वास्तव में नाम के सुझाव के लिए सबसे उपयुक्त है - कार्य जो समय-समय पर होने वाले होते हैं।

+0

मैं इस धारणा से सहमत नहीं हूं कि शेड्यूलर केवल उन कार्यों के लिए है जो समय-समय पर होते हैं। मेरी राय में एक-ऑफ के लिए इसका उपयोग करने में कुछ भी गलत नहीं है। यदि आप क्वार्ट्ज के साथ लगातार नौकरियों का उपयोग करते हैं, तो यह शटडाउन से बच जाएगा और क्लस्टर में काम करेगा, और जब आप विफल हो जाते हैं तो आप फिर से निष्पादन के लिए नौकरी को आसानी से चिह्नित कर सकते हैं। Http://bit.ly/eiSkRS – Eelco

1

मैं सहमत हूं कि टॉम के साथ इस तरह के असीमित संचार कतार के माध्यम से किया जाता है। पर्यवेक्षक पैटर्न के बाद एक प्रकाशित-ग्राहक मॉडल की तरह कौन सा काम करता है।

संबंधित मुद्दे