I am developing a node.js app locally on Mac OS X 10.9.5 that proxies requests for large files on another server. I have tried writing my app using node-http-proxy, and also with a simple http/request one-liner (req.pipe(request()).pipe(res)). Both work fine until I start making e.g. 30 simultaneous requests to my proxy for a large-ish(90MB) file. Tailing the access log on the backend server, I can see that only a portion of my proxied requests appear immediately. The others trickle in many seconds and sometimes minutes later. In some cases, the later outbound requests correspond with the completion of some of the requests that arrived immediately, and in other cases I see no patterns as far as what is unblocking the requests. The number of requests that make it out to the backend server immediately is inconsistent. I have tried setting http.globalAgent.maxSockets to a number much larger than my 30 requests, but this does not make a difference. Any other ideas as to what could be delaying a subset of my outbound HTTP requests?? Thanks!
Nodejs outbound HTTP requests delayed despite high maxSockets
655 Views Asked by Robin At
1
There are 1 best solutions below
Related Questions in NODE.JS
- How to solve CERT_UNTRUSTED error in nodemailer
- Run a loop over a callback, node js
- Implementing prerender.io middleware in sails.js
- Token based authorization in nodejs/ExpressJs and Angular(Single Page Application)
- formatting path string in javascript
- One to One screensharing using WEBRTC
- Create polygon from grid (for collisions)
- Strange npm behavior when installing packages like grunt
- Convert JSON.gz to JSON in node js
- "Your npm version is outdated." but it's not. While install yo
- Why put methods on the prototype of a class instead of declaring them in the constructor?
- Node JS Async Response
- mongoose get property from nested schema after `group`
- Cannot Receive Incoming call on Twilio android Client
- How can I change a specific line in a file with node js?
Related Questions in PROXY
- Bulletproof HTTP Monitor for iOS
- HTTP to HTTPS mapping using proxy servers
- Serving external webpages through a single website
- I dont know how to add Proxy to my Phantomjs script
- How to configure standalone Jetty 9 as a reverse proxy to a node app?
- How to wait inside a method, till other method is completed
- Working on two different Git Organization repos using two different credentials in proxy mode
- How to publish wsdl when using different endpoints in proxy with WSO2?
- npm doesn't download packages (connect ETIMEDOUT)
- Browsersync LiveReload on Proxy Server
- Can the HTTP method "PATCH" be safely used across proxies etc.?
- redirect https to http for content filtering
- Uncaught SoapFault exception: [HTTP] Proxy Authentication Required
- Using phantomjs print proxy it used to access website
- How to set up a reverse proxy in nodejs for multiple targets?
Related Questions in NODE-HTTP-PROXY
- Get request body for post operation
- Create proxy according URL path
- error while using node proxy
- Error while trying to re-direct application to new server port
- http request does not emit 'end' after proxy
- In nodejs trying to get http-proxy to forward requests passing through query string parameters
- Nodejs outbound HTTP requests delayed despite high maxSockets
- Node.js http-proxy drops websocket requests
- Node http-proxy and express
- How to reverse proxy to local server without incoming ports opened using node.js
- why req.body is undefined in 'proxyRes'
- Node HTTP Proxy: Trying a different endpoint based on response
- Proxying websockets with single "proxyServer" to multiple targets
- Create a HTTPS Proxy for arbitrary external urls
- ENOBUFS error running tests through Karma
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Note that there are (at least) two outbound HTTP socket pools. You have properly configured the one for outbound http connections using,
http.globalAgent.maxSockets, however, there is another one for https connections,https.globalAgent.maxSockets.And just as a refresher. From the node docs on the matter: