4

The site periodically becomes unavailable with HTTP 500 error. All I could find from the logs so far is:

ModuleName iisnode 
Notification EXECUTE_REQUEST_HANDLER 
HttpStatus 500 
HttpReason Internal Server Error 
HttpSubStatus 1001 
ErrorCode The system cannot find the file specified. (0x2) 

Note that response time in this instance is around 38 seconds. I suspect this happens because IISNode process goes to sleep and the when it wakes up it fails on the first request after long time out. I created Azure WebJob that pings the site every 15 minutes to keep it alive and it seemed resolved the issue. I am just wondering if there's a better solution.

Stan Bashtavenko
  • 1,025
  • 11
  • 16
  • I'm experiencing this issue too and have found no nicer solution. Unfortunately this isn't a viable solution for me long term as my site won't need to be warmed up all of the time, costing me cpu time. However, an error after an hour or so of inactivity is also unacceptable. – Anish Patel Mar 25 '15 at 16:04

1 Answers1

1

There is a GitHub issue here that addresses this issue. The problem is due to the nature of how IIS lazily initializes the node process. Requests may be dropped if initialization takes too long. The suggested solution is to increase one or both of the values for maxNamedPipeConnectionRetry and namedPipeConnectionRetryDelay in your web.config or iisnode.yml file. The GitHub answer goes into more detail about why those values are relevant.

Miguel
  • 311
  • 2
  • 9