Hi, Please properly subscribe to the user list (this way we will not have to manually approve your emails). All you need to do is send an email to ì [email protected]î and follow simple instructions in the reply.
Do I understand you properly that every transaction performs 1000 put operations? If so it means that the more nodes you have the more of them will participate in every transaction at prepare/commit phases that will lead to more network round-trips. If my understanding is correct I would suggest the following: - don't use such big transaction unless there is a reason for that. Split such big transaction on a smaller one that will correspond to your business use case. Describe your use case if you need more details. - if the keys that are used in transactions, that are running in parallel, are the same then it means that one transaction will block the other. If this is not the case then use several Threads that will perform transactions in parallel to improve the overall throughput. - use optimistic serializable transactions whenever it's possible [1] because in basic scenarios they should work faster then pessimistic ones. If to follow this suggestions you shouldn't get any performance degradation when your cluster scales horizontally. [1] https://apacheignite.readme.io/v1.6/docs/transactions#optimistic-transactions -- Denis --------------- Hello, We're trying to evaluate Ignite and have some concerns about the performance. We create a cache using the following logic: CacheConfiguration cfg = new CacheConfiguration(); cfg.setName(cacheName); cfg.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL); cfg.setCacheMode(CacheMode.PARTITIONED); cfg.setBackups(1); cfg.setIndexedTypes(PersonKey.class, Person.class); In a transaction (Committed every 1000 puts), we had a Person with a Person key (Affinity on one field). When using only local 2 nodes, the time it takes to insert 100,000 records is roughly 56 seconds. Very slow. As we add more nodes (up to 7), the numbers get significantly worse (Minutes). We must be doing something very wrong. The machine has lots of memory and CPU. The thought process is with one backup, a put for one key will talk to a max of two nodes per put. However, the degradation that result from adding more nodes suggest that a lot more chatter is taking place between the nodes. Any pointers will be greatly be appreciated. Thank you. -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Performance-Degredation-when-adding-more-nodes-tp5575p5612.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.
