My test scenario:
1.One ignite node uses 12GB heap memory and 30GB off-heap memory with
persistence。Here is my cmd to start the node:
nohup ./ignite.sh ../examples/config/example-ignite.xml -J-server -J-Xms12g
-J-Xmx12g -J-XX:+AlwaysPreTouch -J-XX:+UseG1GC -J-XX:+ScavengeBeforeFullGC
-J-XX:+PrintGCDetails -J-XX:+PrintGCTimeStamps -J-XX:+PrintGCDateStamps
-J-XX:GCLogFileSize=10M -J-Xloggc:./gclog.txt -v&
2.My jdbc thin connection is:
2.Excute merge into statements.Each statement has hundreds of data rows.The
test runs about one statement per second.
3.The ignite node run out heap memory when there is no idle limit(gc is not
work as I describe before).The ignite node uses 30%-70% heap memory when I
set Idle connections limit to 50.The connection pool size is 200.
I also tried to limit idle connections in ignite with idleTimeout
setting.But it makes my connection pool not work.
4.I think gc frequency is natural.I am still doing more test and sorry for
no more details about it.
> You said: "And it still uses 80%-85% of heap memory after I stop my
> application", I assume you mean your client application ?
> So after a GC it will still stay at 80% java heap usage ?
> I assume you are using off-heap memory ?
> I am not sure what the problem is, I am running an application that
> updates around 10.000 cache entries every 10 seconds (persistence
> enabled) and run a lot of other code that generates java heap garbage,
> and the application generates around 40MB garbage per second, it fills
> up the heap in a minute or so but goes down to around 20% after every gc.
> How often does you application GC ? if you have 80% heap filled it
> should GC pretty often I would think ?
> There is garbage generated, there is not much you can do about that if
> it's not your own code that generates the garbage, Ignite is not bad and
> with the cache keys and values and even index of heap it should work
> fine, but i guess it all depends on what your application do.
> Den 2018-11-08 kl. 14:07, skrev yangjiajun:
>> I have an ignite node which is version 2.6 and has fixed 12GB heap
>> and 30GB data region.I use it as a database with persistence.It uses
>> of heap memory when my application is busy(My application uses jdbc thin
>> connection).And it still uses 80%-85% of heap memory after I stop my
>> application.Ignite is in bad performance when its heap usage is high.
>> How to reduce ignite heap usage?
>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
Sent from: http://apache-ignite-users.70518.x6.nabble.com/