我在node.js中使用express時遇到了一些阻塞問題。 目前,我有現在這樣的代碼:快速/節點中的阻塞問題
router.get('/Hello', function(req, res, next) {
(async()=>{
try{
await api.connect();
let result=await api.HandleSomethins();
await api.disconnect();
}catch(err){
console.log(err);
}
})();
return res.status(json(result));
});
沒有與上面的代碼沒有問題,我只是用異步/ AWAIT同步沉重的東西加載過程。
後來我有下面的情況:
- 1.UserA使用此URL連接我的Node.js和用戶A是waitting爲 現在響應。
- 2.UserB也在此時連接,因此node.js無法立即處理UserB的請求。
- (note)。我需要發送迴應給用戶客戶端(iOS/Android)。
也許節點服務器會在同一時間得到UserC,D等。我該怎麼做才能處理這種情況? child_proess?簇?或者是其他東西?
這取決於什麼'api.HandleSomethins()'一樣。它是CPU重嗎?另外,是否真的有必要爲每個請求連接/斷開「api」? – robertklep
題外話。我幾乎可以肯定上述代碼存在問題。它應該在'result'沒有被定義時拋出引用錯誤。 –
請顯示'api.connect()'和'api.HandleSomethins()'代碼。 – Aabid