How many cores does each node have?
Numbers of which threads do you increase? The ones doing the get() calls?

Thread dump from the client isn’t that interesting. Better to look what’s going 
on the servers.
You need to monitor your resources – CPU, Network IO, Disk IO. You may hit the 
limit on all of them.
You need to monitor your GC – perhaps that’s what’s taking all of the resources.
You need to look into your cache store – read-through is enabled, so you might 
be hitting performance issues 
with your cache store implementation and/or backing database.
You may need to have a performance profile – take JFR from all nodes.

Performance is a very complex topic and Ignite is a very complex system.
One can’t say for sure what’s going on just by looking at the config.
You have to look into everything at once to be able to make sense of it,
and it’s hardly something that can be done on a user mailing list.

Stan

From: the_palakkaran
Sent: 2 декабря 2018 г. 17:01
To: user@ignite.apache.org
Subject: Re: Ignite not scaling as expected !!! (Thread dump provided)

Hi Amir,

I have two server nodes and 1 client node. I have two caches, one that holds
entire accounts from DB and another counter cache that is used for counter
operations. The server nodes are deployed on two different nodes and
clustered together. A client that is also on one of the machines of the two
server nodes deployed tries to access data from the caches.


Ignite Configuration is provided below:
*
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
      <property name="networkTimeout" value="50000" />
          <property name="failureDetectionTimeout" value="50000" />
      <property name="discoverySpi">
         <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
            <property name="ipFinder">
               <bean
class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
                  <property name="addresses">
                     <list>
                        
                        <value>ip1:47500..47509</value>
                        <value>ip2:47500..47509</value>
                        </list>
                  </property>
               </bean>
            </property>
         </bean>
      </property>
          <property name="communicationSpi">
            <bean
class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
                <property name="socketWriteTimeout" value="5000"/>
                <property name="usePairedConnections" value="true"/>
            </bean>
      </property>
      <property name="gridLogger">
         <bean class="org.apache.ignite.logger.log4j2.Log4J2Logger">
            <constructor-arg type="java.lang.String"
value="./config/ignite-log4j2.xml" />
         </bean>
      </property>
      <property name="peerClassLoadingEnabled" value="false" />
      <property name="dataStorageConfiguration">
         <bean
class="org.apache.ignite.configuration.DataStorageConfiguration">
            <property name="dataRegionConfigurations">
               <list>
                  <bean
class="org.apache.ignite.configuration.DataRegionConfiguration">
                     <property name="name" value="defaultDataRegion" />
                     <property name="initialSize" value="#{1L * 1024 * 1024
* 1024}" />
                     <property name="maxSize" value="#{8L * 1024 * 1024 *
1024}" />
                     <property name="pageEvictionMode" value="RANDOM_LRU" />
                     <property name="persistenceEnabled" value="true" />
                  </bean>
               </list>
            </property>
         </bean>
      </property>
      <property name="cacheConfiguration">
         <list>
                        <bean 
class="org.apache.ignite.configuration.CacheConfiguration">
                                <property name="name" 
value="counterRegionCache"/>
                <property name="atomicityMode" value="TRANSACTIONAL"/>
                <property name="backups" value="1"/>
                <property name="cacheMode" value="PARTITIONED"/>
                <property name="readThrough" value="false"/>
                                <property name="writeThrough"  value="true"/>
                                <property name="writeBehindEnabled"  
value="true"/>
                                <property name="writeBehindFlushSize"  
value="20000"/>
                                <property name="writeBehindFlushFrequency"  
value="60000"/>
                                <property name="writeBehindFlushThreadCount"  
value="8"/>
                                <property name="writeBehindBatchSize"  
value="2500"/>
                <property name="dataRegionName" value="defaultDataRegion"/>     
  
                                <property name="cacheStoreFactory">
                                        <bean 
class="javax.cache.configuration.FactoryBuilder"
factory-method="factoryOf">
                                                <constructor-arg
value="cache.ignite.counter.cachestore.CounterCacheStore" />
                                        </bean>
                                </property>                        
                        </bean>
                        <bean 
class="org.apache.ignite.configuration.CacheConfiguration">
               <property name="name" value="accountMasterCache" />
               <property name="atomicityMode" value="ATOMIC" />
               <property name="backups" value="1" />
               <property name="cacheMode" value="PARTITIONED" />
               <property name="readThrough" value="true" />
               <property name="writeThrough" value="false" />
               <property name="dataRegionName" value="defaultDataRegion" />
                           <property name="writeSynchronizationMode" 
value="FULL_SYNC"/>
               <property name="cacheStoreFactory">
                  <bean class="javax.cache.configuration.FactoryBuilder"
factory-method="factoryOf">
                     <constructor-arg
value="cache.ignite.groups.accountMaster.cachestore.AccountMasterCacheStore"
/>
                  </bean>
               </property>
            </bean>
                </list>
      </property>
      <property name="serviceConfiguration">
         <list>
                        <bean 
class="org.apache.ignite.services.ServiceConfiguration">
               <property name="name" value="cacheLoaderService" />
               <property name="totalCount" value="1" />
               <property name="service">
                  <ref bean="cacheLoaderService" />
               </property>
            </bean>
         </list>
      </property>
        </bean>  *



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to