I'm using DPL in Java. I have 1GB of data store. I'm firing 5 threads which are trying to read the same records after 1second of interval. Initially the read operation takes about 15ms for about 5-10 fetches and then stabilizes to 0ms (micro seconds) and then after 10-20 fetches it gives one spike in read operation (15ms).
what is the root cause of this and how to configure BDB to resolve it.
Thanks
This easily could be garbage collector affecting performance of your application. Try to monitor GC cycles with following command:
and see is there any correlation between spikes and GC activity. Jstat provides following output:
When you see
Allocation failure
this means full GC is started in cause of wanted memory.Btw,
jstat
is part of JDK distribution, so it's must be installed.