簡體   English   中英

如何在隊列中設置“狀態”

[英]How to set "status" in queue

我有一個函數可以將我添加到這樣的作業隊列中:

    async addJob(someParameters: SomeParameters): Promise<void> {
        await this.saveToDb(someParameters);
        try {
            await this.jobQueue.add('job', {
                someParameters
            })
        } catch (error) {
        }
    }

但在添加到隊列之前,我將數據保存在數據庫中。 我的實體有一個帶有一些參數的枚舉字段“狀態”。

在我的job.process.ts我有我的隊列處理器:

    @Process('job')
    async runJob(job: Job<{param: SomeParameters}>): Promise<any> {
        try {
              await this.launchMyFunction(param);
            }
        } 
    }

以及另一個監視隊列中作業的功能:

@OnQueueCompleted()
    async onCompleted(job: Job): Promise<void> {
        await this.updateJobStatus(here must be ID from DB); //HERE IS PROBLEM
    }

現在我有一個問題,如何從隊列中當前作業的數據庫中獲取和 ID 並在數據庫中為該記錄設置狀態?

您可以使用作業ID,並在進程中的作業參數中獲取它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM