0
我有node.js項目,在後端呈現html。我正在使用snabbdom進行渲染。當有很多請求到服務器時,它會變慢。我敢打賭,這是因爲節點是單線程和snabbdom渲染函數(如h1(span('text')))不是異步的。所以,每個渲染都會阻止所有其他請求。 如何解決這個問題? 有什麼辦法異步渲染snabbdom?如何加速snabbdom渲染
我有node.js項目,在後端呈現html。我正在使用snabbdom進行渲染。當有很多請求到服務器時,它會變慢。我敢打賭,這是因爲節點是單線程和snabbdom渲染函數(如h1(span('text')))不是異步的。所以,每個渲染都會阻止所有其他請求。 如何解決這個問題? 有什麼辦法異步渲染snabbdom?如何加速snabbdom渲染
由於這是DOM渲染,我估計它完全取決於CPU速度,所以它不是異步的。你是對的,因爲Node是單線程的,其他請求在CPU工作時被阻塞。解決方案是使用PM2 in cluster mode啓動您的應用程序:pm2 start app.js -i 0
。這樣,如果你有8個內核,它將並行啓動8個線程。
謝謝。集羣可能是選擇。 我對超時感興趣。壞的是沒有snabbdom異步庫。 下一個行爲將解決問題: h1(span('text'))應該以下一個方式渲染 1)render span; 2)比,如果在事件隊列中有另一個動作做它; 3)使用步驟(1)的結果渲染h1。 但我不能想出代碼,這將以這種方式工作。 –