You may want to try mtrace, I've exposed it in a node module here:
https://github.com/Jimbly/node-mtrace

It allows you to trace and analyze native heap memory usage, though if most 
of the native code you're in is C++, it's just going to say all the memory 
was allocated by "operator new()", but it's worth a shot.


On Wednesday, August 1, 2012 12:23:33 AM UTC-7, Rusty wrote:
>
> On Monday, July 30, 2012 6:55:23 PM UTC-7, Marak Squires wrote:
>>
>> It's possible you've got a leak in your application code ( accidentally 
>> not calling .end on a response stream is a common issue I've seen ).
>
>
> Thanks for your help Marak.
>
> The code uses socket.io, and in my testing I have it serving only 8 
> clients so the number of connections opened should be constant.  I am not 
> opening any connections myself beyond the basic usage.
>
> I will work on a test case to narrow things down.
>  
>
>> There are profiling tools to help track this sort of thing down, but I'm 
>> not sure which is the best these days. Usually, I find that a code review 
>> is enough to track down this sort of thing.
>>
>
> Code review is great, and this is all after a thorough review and cleanup. 
>  However, it seems like a lack of tools for this situation is a significant 
> drawback to this platform.
>
> All of the memory tools I am aware of, I have tried.  All the V8 heap 
> tools are of little use since the JS heap isn't growing.  The distribution 
> of types across the heap is relatively constant as well (as far as I can 
> see).
>
> Valgrind is great for "real" leaks in "native" code, but it doesn't really 
> help here.
>  
>
>> It's also possible there is a leak in core, or in one of the third-party 
>> modules you are using. Further investigation seems warranted.
>>
>   
> Hopefully I can come up with a reduction that explains what is going on. 
> :-/
>
> The more problems I find like this, the more I realize why people enjoy 
> there silly "stable" environments. ;-)
>
> Thanks again Marak.
>
> ~Rusty
>

-- 
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