![]() An audit of your code would be necessary. Sometimes in events, but often in asynchronous background threads that never end. Infinite loops that keep threads in memory are the biggest culprit. ![]() ![]() In my experience, big memory leaks are almost always inappropriate jython programming. Note that java isn't giving memory back to the OS when it reclaims, it is just marking it for reuse within java.ĥb) I would guess (you haven't shared enough) that your diagnostic view starts something in Ignition, either natively or perhaps a long-running thread of your own, that continues grabbing chunks of data at intervals, and then java's GC slowly reclaims it.ĥc) Again, guessing, but you likely have a memory leak that starts with that diagnostic view. The downward slope on your sawtooth is relaxed reclaim. Java's garbage collection technology will reclaim the memory of unused objects on a relaxed pace when there's plenty of heap available, and on a more aggressive pace when there's little free heap. Include a snippet from nf to show your setup.ĥa) The memory trend shown in the gateway web interface is Ignition's memory-java's heap. How many tags are defined? How many clients are running? What else is running in the same machine as the gateway? Screen shots of Ignition's performance page and of your OS's memory usage would help. You might simply be doing more with Ignition that will fit in its allowance.įor more specific advice, share more specific information. If your situation is Ignition using all of its allowed memory, while the OS still has plenty available, then adjust nf to give it more. If installing on a laptop for local development, you must leave a lot of RAM for the OS, your development DB, your graphical desktop, and any designer(s) you might run (which also are java, and use gobs of memory). That allotment should be significantly less than the total in the machine in order to leave RAM for the OS to use, especially for I/O buffers. ![]() In production, the initial value and maximum value should be the same so that Java gets its allotment immediately. You configure the RAM Ignition is allowed to use for its heap in nf. The Gateway is not returning the memory to the OS and continues getting more and more until collapses
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |