खोज…


परिचय

कतारें आपके आवेदन को उन कार्य को आरक्षित करने की अनुमति देती हैं जो एक पृष्ठभूमि प्रक्रिया द्वारा नियंत्रित होने में समय लेते हैं।

बक्सों का इस्तेमाल करें

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

एक अन्य उदाहरण एक इन्वेंट्री सिस्टम को अपडेट करने के बाद होगा जब ग्राहक अपने ऑर्डर के साथ जांच करेगा। एपीआई कॉल के पूरा होने की प्रतीक्षा करने के बजाय, जिसमें कई सेकंड लग सकते हैं, आप तुरंत पृष्ठभूमि में होने वाली एपीआई कॉल को कतार में रखते हुए उपयोगकर्ता को चेकआउट सफलता पृष्ठ पर पुनर्निर्देशित कर सकते हैं।

कतार चालक विन्यास

Laravel के प्रत्येक कतार ड्राइवर को config/queue.php फ़ाइल से कॉन्फ़िगर किया गया है। एक कतार चालक एक कतारबद्ध नौकरी चलाने के प्रबंधन के लिए हैंडलर है, यह पहचानने के लिए कि क्या नौकरी सफल हुई या असफल हुई, और ऐसा करने के लिए कॉन्फ़िगर किए जाने पर नौकरी की फिर से कोशिश करना।

बॉक्स से बाहर, लारवेल निम्नलिखित कतार ड्राइवरों का समर्थन करता है:

sync

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

database

यह ड्राइवर डेटाबेस में कतारबद्ध नौकरियों को संग्रहीत करता है। इस ड्राइवर को सक्षम करने से पहले, आपको अपनी कतारबद्ध और असफल नौकरियों को संग्रहीत करने के लिए डेटाबेस टेबल बनाने की आवश्यकता होगी:

php artisan queue:table
php artisan migrate

sqs

यह कतार चालक पंक्तिबद्ध नौकरियों का प्रबंधन करने के लिए अमेज़ॅन की सरल कतार सेवा का उपयोग करता है। इस काम को सक्षम करने से पहले आपको निम्नलिखित कंपोजर पैकेज स्थापित करना होगा: aws/aws-sdk-php ~3.0

यह भी ध्यान दें कि यदि आप पंक्तिबद्ध नौकरियों के लिए देरी का उपयोग करने की योजना बनाते हैं, तो अमेज़ॅन एसक्यूएस केवल अधिकतम 15 मिनट की देरी का समर्थन करता है।

iron

यह कतार चालक पंक्तिबद्ध नौकरियों को प्रबंधित करने के लिए आयरन का उपयोग करता है।

redis

यह कतार चालक पंक्तिबद्ध नौकरियों के प्रबंधन के लिए रेडिस के एक उदाहरण का उपयोग करता है। इस कतार ड्राइवर का उपयोग करने से पहले, आपको Redis की एक प्रति कॉन्फ़िगर करने और निम्नलिखित संगीतकार निर्भरता स्थापित करने की आवश्यकता होगी: predis/predis ~1.0

beanstalkd

यह कतार चालक कतारबद्ध नौकरियों के प्रबंधन के लिए बीनस्टॉक के एक उदाहरण का उपयोग करता है। इस कतार ड्राइवर का उपयोग करने से पहले, आपको बीनस्टॉक की एक प्रति को कॉन्फ़िगर करना होगा और निम्नलिखित संगीतकार निर्भरता स्थापित करनी होगी: pda/pheanstalk ~3.0

null

अपने कतार ड्राइवर के रूप में निर्दिष्ट करने से कोई भी कतारबद्ध नौकरी छूट जाएगी।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow