1
我用一條路線寫了一個快速應用程序。處理程序將傳入請求的主體保存到couchdb數據庫。如何控制節點express.js應用中排隊請求的最大數量?
我寫了一個C#客戶端應用程序,使用線程異步發送10000個小請求。某些請求失敗,並顯示此異常消息「由於目標計算機主動拒絕,無法建立連接」。
我想這是因爲節點進程達到最大數量的排隊連接。是對的嗎?
這個應用程序是一個概念證明,我不會在我的真實應用程序有這麼大的負載,但我想測試的限制,並瞭解它們是如何工作的。
我有兩個問題:
有沒有辦法來控制排隊的請求的最大數量?我可以 將其設置爲「無限」嗎?如果不是,最大值是多少,爲什麼會有最大值?
在我的節點應用程序中,有沒有一種方法可以讓我捕獲並記錄那些丟失的請求?在生產應用程序中,我想知道我的 服務器已達到最大請求數。
更多信息:
- 我在Windows
- 運行這個我已經試過app.listen(3001, 'localhost' 的,10000)設置backlog參數。同樣的結果。
我已經試過了。將它設置爲10000並沒有改變任何東西。 – Sylvain
看看這個。 http://blog.caustik.com/2012/04/06/node-js-scalability-testing-with-ec2/文件句柄限制似乎也是一個問題。 –
有趣...我在Windows上運行這個,下面的鏈接使它不清楚Windows上是否有這樣的限制。見http://stackoverflow.com/questions/729162/windows-equivalent-of-ulimit-n和http://stackoverflow.com/questions/870173/is-there-a-limit-on-number-of-open -files式窗口。我搜索了'最大套接字連接窗口'。我發現了有關Windows 7默認值(和最大值)爲65534的註冊表設置MaxUserPort的信息。我當然不會達到這一點。 – Sylvain