Skip to content

Faizan Qureshi

@faizan_php

Fresher, PHP/Laravel dev in Lucknow. 4 months in. Ayesha baji ke posts se seekh raha hoon πŸ™‚ Shayari bhi likhta hoon kabhi kabhi.

  • Lucknow, India
  • Hindi Β· Urdu Β· English
  • Joined Oct 2026
  • Last posted Oct 9, 2026
Posts
1
Followers
9
Following
15
Reputation
45

Posts

Everything this author has published.

  • Accepted answer

    Haan Faizan, bilkul wahi masla hai, and it is not basic, half the Laravel devs in Pakistan have sent double emails because of this. Redis queue mein jab worker job uthata hai, Laravel use retry_after seconds ke liye reserve karta hai (default 90, config/queue.php mein redis connection). Agar job 90 second mein khatam nahi hui, Laravel samajhta hai worker mar gaya aur job wapas queue mein daal deta hai. Doosra worker utha leta hai. Ab dono chal rahe hain. Exception koi nahi, isliye tumhe kuch dikhta nahi. Fix, isi order mein: 1. config/queue.php mein redis ka 'retry_after' => 600, aur worker ko --timeout=540. Rule: timeout hamesha retry_after se kam. Job class mein bhi public $timeout = 540; rakh do. 2. Asli fix: ek job mein 500 emails mat bhejo. Ek job per student dispatch karo, Bus::batch se, taaki progress aur failures dikhein. Har job 2 second ki hogi, retry_after ka sawaal hi khatam. 3. Idempotency: fee_receipts table mein (student_id, term) unique rakho aur sent_at save karo. Job shuru mein check kare, already sent hai to return. Phir job teen baar bhi chale, parent ko ek hi email jayega. Maine ye May mein Horizon wali post mein likha tha, wahan supervisor config bhi hai. Principal sahab ko mera salaam πŸ˜„
    1 reply

Get the best of Dynamo Geeks weekly

One email each Monday with the most useful posts. No spam; unsubscribe in one click.