Thanks for your reply. PSB.

On Tue, Apr 17, 2012 at 2:40 PM, Dominic Tarr <[email protected]>wrote:

> what are the units on the time axis?

Milliseconds.


>
> this should only happen if you are doing too much sync processing.
>
Everything is async (i.e. any call that may take a non-predictable amount
of time is an async call).


>
> does it still happen if you run bench your app with ab?
> if so, remove parts of your app until the problem stops.
>
> I've tried to see if I could isolate the problem by removing parts of the
program, but havnen't been able to boil it down to the essence along this
path :)


> also, garbage collection: I've done some experiments creating objects
> until node crashes, and I noticed pauses as the heap grew large.
>
> how large are the requests to the backends? if they are very large and you
> are buffering them all into memory, maybe that could be a clue?
>
Requests are fairly small (less than 1KBytes); replies on the order of
10-100KBytes.


>
> these are just ideas that come to mind. I don't really know.
>
> this also looks like a lead https://github.com/dannycoates/v8-profiler
>
I'll have a look, thanks.

/Martin


>
> On Tue, Apr 17, 2012 at 7:48 PM, Martin Koch <[email protected]> wrote:
>
>> Hi Group
>>
>> We're running nodejs as a frontend for several backend services to
>> dispatch incoming requests and process and return results from the backend
>> services. We're processing around 20 requests / second.
>>
>> Sometimes, we observe that the execution thread stalls. Stalls are
>> detected by a simple setInterval function that is called regularly and logs
>> a complaint if actual time elapsed is greater than the expected elapsed
>> time. I have attached a histogram of the distribution of stall delays - it
>> may provide a clue.
>>
>> We THINK that the stalls are somehow socket-related, but we haven't been
>> able to recreate this reliably (or tweak os-level or user-level socket
>> parameters that make the problem go away).
>>
>> So I'd like to ask the group two questions:
>>
>>    1. Is anyone else running into similar behavior?
>>    2. Can anyone provide pointers for how to find out exactly where
>>    (which function call) nodejs is stalled?
>>
>> Thanks,
>> /Martin Koch
>>
>> --
>> Job Board: http://jobs.nodejs.org/
>> Posting guidelines:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> You received this message because you are subscribed to the Google
>> Groups "nodejs" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>
>
>  --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to