Hi,

We are observing really good performance with single node, however with
multiple nodes in cluster ,performance is degrading or we can say
application throughput is not scaling. 

I wrote a sample program to put 100K <Integer, Integer> data into cache in a
single thread using put() and later read all of them using get().
(Application won't get all data from cache, but this gives a ball park idea
how put and get will behave)

Below is the time taken on 8 CPU Windows laptop -
1 Server  - Put took 5136 ms - Get took 725 ms
2 Servers - Put took 19468 ms - Get took 10162 ms
3 Servers - Put took 28087 ms - Get took 14481 ms
4 Servers - Put took 34948 ms - Get took 16310 ms

As you can see from 1 Server to 4 Server timing degraded ~7 fold for Put and
22 fold for fetch. 

Is this because of Partitioned cache where each partition getting balanced
automatically? How can I tune it to get optimal performance?

Attaching sample program. (To add nodes, use ExampleNodeStartup.java from
Ignite examples.)

-Sam

PutAndGetPerf.java
<http://apache-ignite-users.70518.x6.nabble.com/file/n9378/PutAndGetPerf.java>  



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Performance-with-increase-in-node-tp9378.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Reply via email to