Anshuman I'd add NiFi is generally not trying very hard to be small on the box in terms of memory. You can tune it to be slow/use less CPU and less network and disk but memory wise it is often going to be well into the hundreds of MB range without even trying.
Apache MiNiFi Java implementation aims to be a bit better here and the C++ implementation aims to be far better/tighter. Generally speaking NiFi wants to be the star of the show on a system and isn't really wanting to share (though it could). MiNiFi is meant to often share with other things on the box or be a minimal consumer of resources. Thanks Joe On Thu, Mar 30, 2017 at 9:43 AM, Mark Payne <[email protected]> wrote: > Hi Anshuman, > > Unfortunately, your attachment didn't come through. The mail server tends to > strip out most attachments. > > Generally, though, you'll see a large amount of heap used because there are > background tasks running in NiFi that create > a bunch of objects when they run. For efficiency purposes, the JVM Garbage > Collector will not reclaim this space until it > has a need to do so. So you will see a lot of heap used up simply because > garbage collection hasn't yet reclaimed the space. > > In addiiton, there are several things that will take up heap regardless of > whether or not Processors are running. For instance, > the stats for each Processor have to be maintained even when the Processors > are not running. In addition, NiFi has to load into > heap all of the classes needed to run, so this includes all of the Processors > themselves. If you were to remove some of the > unused NARs from your lib/ directory, you would see far less heap used up by > the class loaders. > > Thanks > -Mark > > > > On Mar 30, 2017, at 6:24 AM, Anshuman Ghosh > <[email protected]<mailto:[email protected]>> wrote: > > Hello, > > We are building a small data flow using NiFi. > Couple of times however we came across the Java heap size issue. > > Even when the NiFi Flow is stopped, it is consuming so much memory (find the > attachment). Is there any specific reason for this? > Is there a way to tune it? > > My JVM setting is like below > > # JVM memory settings > java.arg.2=-Xms512m > java.arg.3=-Xmx1g > > > Thank you > in advance! > > ______________________ > > Kind Regards, > Anshuman Ghosh > Contact - +49 179 9090964 > >
