1
我想知道在達到maxSockets
時會發生什麼?node.js當達到maxSockets時會發生什麼?
如果我使用的服務允許我創建自定義http.Agent
,並且指定maxSockets
爲1.當我嘗試發出多個併發請求時會發生什麼?
將每個請求超出初始塊,直到初始完成?那麼套接字將變爲可用於下一個請求?和其他所有人阻止?我肯定會這樣認爲,但是無法專門在文檔中找到任何內容,並且對套接字編程來說是全新的。
我想知道在達到maxSockets
時會發生什麼?node.js當達到maxSockets時會發生什麼?
如果我使用的服務允許我創建自定義http.Agent
,並且指定maxSockets
爲1.當我嘗試發出多個併發請求時會發生什麼?
將每個請求超出初始塊,直到初始完成?那麼套接字將變爲可用於下一個請求?和其他所有人阻止?我肯定會這樣認爲,但是無法專門在文檔中找到任何內容,並且對套接字編程來說是全新的。
在使用maxSockets之後,額外的requests get queued直到一個活動的請求完成並且一個套接字被釋放使用,此時在新釋放的套接字上發送來自隊列的未決請求。
注意這在技術上排隊不會阻塞 - 在此過程中,CPU和事件循環繼續執行有用的工作。
另請注意,每個來源(「主機:端口」)(與瀏覽器類似)都有一個maxSockets和隊列。