Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

Laravel - क्रम में चल रही नौकरियां

जैसा कि आप अपने प्रश्न में उल्लेख करते हैं, आप जो खोज रहे हैं, वह जॉब चेनिंग है।

लारवेल डॉक्स से

<ब्लॉकक्वॉट>

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

ProcessPodcast::withChain([
    new OptimizePodcast,
    new ReleasePodcast
])->dispatch();

तो ऊपर आपके उदाहरण में

$mailJobs = Subscriptions::all()
    ->map(function($subscription) {
        return new SendMailJob($subscription);
    });

Job::withChain($mailJobs)->dispatch()

अपेक्षित परिणाम देना चाहिए!

अपडेट करें

यदि आप श्रृंखला से प्रारंभिक नौकरी का उपयोग नहीं करना चाहते हैं (जैसे ऊपर दिए गए दस्तावेज़ीकरण उदाहरण में दिखाया गया है) तो आपको एक खाली Job बनाने में सक्षम होना चाहिए वह वर्ग जिसमें use Dispatchable; . फिर आप ऊपर दिए गए मेरे उदाहरण का उपयोग कर सकते हैं



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. इंस्टेंट मैसेजिंग सिस्टम के लिए रेडिस पब/सब कैसे डिजाइन करें?

  2. रेडिस कैश में समाप्ति जोड़ें

  3. लुआ में एक चरित्र द्वारा एक स्ट्रिंग को विभाजित करें

  4. रेडिस कीज कमांड में 'OR' कंडीशन कैसे लागू करें

  5. ग्रेडेल स्थानीय कार्यों का निर्माण करता है। डोकर कंटेनर में यह नहीं है। क्यों?