我目前正在寫一個客戶端JavaScript應用程序執行圖像處理。它目前執行的一些操作在瀏覽器中運行非常緩慢(以2-3秒爲單位)node.js與客戶端Javascript(與Chrome/V8相比)是否具有任何性能優勢?
我期望實現的一個解決方案是讓客戶端通過websocket從a接收結果信息服務器(websocket,而不是AJAX,因爲它需要顯示實時信息等),並讓服務器完成圖像處理的繁重工作。
Node.js是一個明顯的候選人,也是用Javascript編寫的 - 但我的第一個想法是沒有性能優勢(我的客戶端在Chrome/V8中運行,而Node.js也是在V8中) - 我是否認爲這是正確的?或者Chrome的用戶界面是否需要在服務器端不會感覺到客戶端的性能損失? (例如,Chrome是否在後臺執行了更多的UI工作以保持一切響應,使得node.js服務器不會花費時間進行操作?)
node.js是否具有任何性能優勢,還是我最好研究C或Java Web套接字服務器來完成這項工作?
由於您已經在JavaScript中編寫了代碼,因此我建議您嘗試一下Node.js並親自查看。它不應該花費很多努力。 –
@FelixKling儘管它已經在Javascript中了,但是它仍然需要相當多的工作來將現有的代碼拆分成適當的帶有websockets的客戶端/服務器 - 我絕對想要找到一些性能信息。在做這樣的事情之前 –
Node.js不適合做圖像操作的繁重工作。但它是將ImageMagick作爲子進程調用的正確工具。 – generalhenry