2014-07-21 52 views
-1

我一直在閱讀關於節點及其如何單線程。如果我有一個大文件(500MB)上傳到服務器或從服務器下載文件,我猜這不能在服務器端以異步方式發生。在這種情況下,這是否是一個糟糕的用例來使用nodejs?或者有沒有一種解決方案可以在不阻塞事件循環的情況下完成?node js文件上傳下載和流媒體數據

回答

0

有一個用戶線程但節點中還有其他線程。

大多數IO操作都是在場景後面爲您完成的,您只能根據事件進行操作。通常情況下,您會收到大量數據的事件,如果其他請求同時發生,則可能會與其他事件交錯。如果你在主線程(通常是這種情況)中沒有做太多的事情,那麼你的程序在上傳過程中沒有任何阻礙。

+0

下載回調處理程序將執行很長時間,直到所有數據都寫入客戶端。這是否會阻止事件循環,因爲事件循環將執行回調處理程序? – Chandan

+0

這不是你的腳本中的一個循環:你的事件處理程序多次被這個連接的數據調用,但是在你的其他事件處理程序之間也可以被調用。 –