On Jun 2, 02014, at 6:40, [email protected] wrote: > Hi. > > I'm working as system engineer in a company developing various software. One > of the project I'm involved in uses a web server implemented with node.js, > and I kinda have a problem there. I run it on a Solaris 11 x 86 server, node > version is 0.10.28. About 10% of time it doesn't serve incoming requests. I'm > running an nginx in front of it, and it looks like nginx is getting timeouts > while reading from node (connection is establishing just fine). I don't have > any skills in node or javascript other than installing/configuring, so I took > the dtrace toolkit and ran a script that shows the systemcalls issued by the > node process (dtruss, actually). Looks like when hanging the process issues > multiple successful nanosleep() calls,and a number of periodic lwp_park() > calls which get an error 62. This physical server also runs multiple network > services (for years, actually; and they remain operational during node web > server outages) so I don't think this can be related to some global OS > misconfiguration on the OS level. > Is this a javascript code issue, a node issue or something else ?
i’d suspect a bug in what node’s running, most likely. node has better integration with dtrace, so you should be able to probe a little more finely than system calls there. Hanging could be not calling back with the data for whatever reason — accepting a connection but not responding is exactly what happens when a callback is dropped by the application. Tough to diagnose more without more information, but that’s where I’d start. Aria
signature.asc
Description: Message signed with OpenPGP using GPGMail
