ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ilya Kasnacheev <ilya.kasnach...@gmail.com>
Subject Re: Why Ignite use so many heap space?
Date Mon, 12 Nov 2018 16:37:13 GMT
Hello!

https://issues.apache.org/jira/browse/IGNITE-10224 might be related. Try
closing connections every now and then. If it does not help, collect heap
dump & analyze it.

Regards,
-- 
Ilya Kasnacheev


пн, 12 нояб. 2018 г. в 12:44, yangjiajun <1371549332@qq.com>:

> 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:+DisableExplicitGC -J-XX:+HeapDumpOnOutOfMemoryError
> -J-XX:HeapDumpPath=./logs -J-XX:+ExitOnOutOfMemoryError
> -J-XX:+PrintGCDetails -J-XX:+PrintGCTimeStamps -J-XX:+PrintGCDateStamps
> -J-XX:+UseGCLogFileRotation -J-XX:NumberOfGCLogFiles=10
> -J-XX:GCLogFileSize=10M -J-Xloggc:./gclog.txt -v&
> 2.My jdbc thin connection is:
>
> jdbc:ignite:thin://ip:port;lazy=true;skipReducerOnUpdate=true;replicatedOnly=true
> 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.
>
>
> Mikael wrote
> > Hi!
> >
> > 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.
> >
> > Mikael
> >
> > Den 2018-11-08 kl. 14:07, skrev yangjiajun:
> >> HI.
> >>
> >> I have an ignite node  which is version 2.6 and has fixed 12GB heap
> >> memory
> >> and 30GB data region.I use it as a database with persistence.It uses
> >> 90%-95%
> >> 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/
>

Mime
View raw message