Consistent high operating memory usage

Hi all, Our application node operation system memory is quite consistently at about 97%. With every monthly release and occasional hotfix release, we see it drop again but then climb back up in a couple of days towards that same 97%. This does not feel comfortable at all. We have done – and looked into the following: -    We upped our memory from 8 to 16 gb, but percentage wise it’s the same (stabilizing at 97%). At 8gb it did actually seem to have hit the limit occasionaly and thus has caused crashes, hence the upgrade to 16gb. -    Our max, idle and active connections are not extremely high (see screenshot) -    We discovered the occasional peak in NPE, sometimes even hitting the 2500. Even though this would be wise to fix, we believe this cannot be the cause for a consistent 97%. -    The same applies to long running queries (once every few weeks we have a 100+ seconds query), but again – this could explain peak memory usage, but not a consistent high.    As implicitly mentioned, user interactions might cause spikes during peak hours but it does not make for a logical reason for consistently growing towards and stabilizing at about 97%..   Any ideas on possible reasons and ways to fix this? Similar questions were asked here and here, but were not solved. 
1 answers


I think you should first fix the NPE issues. They're getting removed by the garbage collector automatically, but only when all associated persistent instances are removed. You'll probably find messages in your logfiles about these NPE's. It is always a good practice ,to remove the NPE objects when you're done processing them.


Otherwise, it looks like some performance issues. Perhaps a loop in a loop, or scheduled event actions which take too long, and it gets triggered again while the first is still running. You might also check the MxAssist Performance Bot. 


Or you might use external apps to monitor your performance. There are some add-ons on the market, like APM/APD