需求是這樣的,在onWorkerStart中,定時檢測并異步執(zhí)行耗時任務,當有客戶端連接ws時,可以實時獲取該進程任務的執(zhí)行日志。
目前我采用的方案是文件和redis這樣的中間件。我在想,既然timer和websocket同屬于一個進程,那么能否不用中間件,直接在onWorkerStart里發(fā)送send給客戶端呢?
單進程模型是可以的:
onConnect回調設法保存所有客戶端連接,onWorkerStart回調定時執(zhí)行異步任務并將異步結果反饋即send給客戶端。