What could cause a large number of Timeout objects to be retained in heapdumps for a NodeJS heapdump?

101 Views Asked by At

For the past few months, my service has struggled with memory issues. Upon analyzing the heapdumps, I see that Timeout takes up a large amount of retained memory, usually about 70%, while the shallow memory is actually about 29%. When I expand the retainers of one of the Timeout objects, I see a cascading _idlePrev in Timeout, some of them cascade for a lot longer than this. For context, the app is a NodeJS Express app and we use opossum as a circuit breaker and Node Fetch to make requests. I know that's not nearly enough information to diagnose the issue, but I was wondering if anyone has seen anything like this and what could cause a stack like this to be retained in memory. enter image description here

0

There are 0 best solutions below