الانتقال إلى المحتوى الرئيسي
تسهل القوائم العمليات غير المتزامنة. يمكن استخدامها لأداء مهام الخلفية مثل إرسال بريد ترحيبي عند التسجيل. سيكون لكل حالة استخدام فئة قائمة خاصة بها ممتدة من MessageQueueServiceBase. حاليًا، ندعم bull-mqbull-mq فقط كبرنامج تشغيل القائمة.

خطوات إنشاء واستخدام قائمة جديدة

  1. أضف اسم قائمة لقائمة جديدة تحت التعداد MESSAGE_QUEUES.
  2. وفّر تنفيذ المصنع لقائمة الانتظار مع استخدام اسم قائمة الانتظار بوصفه رمز التبعية.
  3. قم بإدراج القائمة التي أنشأتها في الوحدة/الخدمة المطلوبة مع اسم القائمة كرمز تبعية.
  4. أضِف صنف عامل مع حقن قائم على الرمز تمامًا مثل المنتِج.

نموذج للاستخدام

class Resolver {
  constructor(@Inject(MESSAGE_QUEUES.custom) private queue: MessageQueueService) {}

  async onSomeAction() {
    //business logic
    await this.queue.add(someData);
  }
}

//async worker
class CustomWorker {
  constructor(@Inject(MESSAGE_QUEUES.custom) private queue: MessageQueueService) {
    this.initWorker();
  }

  async initWorker() {
    await this.queue.work(async ({ id, data }) => {
      //worker logic
    });
  }
}