簡體   English   中英

如何在NodeJS中終止所有工作人員的工作?

[英]How to end all workers from master in NodeJS?

如果我的數據庫無法連接,我需要終止所有工作程序...

if (cluster.isMaster) {
    mongoose.connect(config.db.path, function(err) {
        if (err) {
            logger.error('Can\'t connect to database')
            // kill all workers here
            process.exit()
            return
        }
    })
}

通過使用列出所有工人

集群工人

然后使用cluster.worker.kill()函數結束它們。

您可能要使用cluster.disconnect()

在cluster.workers中的每個工作程序上調用.disconnect()。

當它們斷開連接時,所有內部句柄都將關閉,如果沒有其他事件在等待,則允許主進程正常終止。

該方法帶有一個可選的回調參數,該參數將在完成時被調用。

這只能從主進程中調用。

還有一個可選參數傳遞給此函數- callback <Function> ,當所有工作程序都斷開連接並且句柄關閉時,將調用該函數。

暫無
暫無

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

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