Hello! Ignite is not supposed to consume a lot of CPU when idle. Can you collect thread dump from Ignite JVM when it happens?
Regards, -- Ilya Kasnacheev пн, 17 дек. 2018 г. в 23:19, mh <[email protected]>: > Hello, > > I am currently trying to integrate Ignite 2.7 into an existing Web > Application built on top of Apache Tomcat. Therefore I use it in an > embedded > mode. > > While everything works fine so far, I came across an issue regarding the > idle CPU consumption. On my developing machine (Laptop, Inteil I7), Ignite > consumes about 20% of CPU according to the task manager. > > Our production environments are usually virtualized, thereby I expect the > CPU usage to be higher within those scenarios. > As we use Ignite to execute complex tasks only, is there a way to decrease > the idle CPU consumption (and thereby free resources for frontend tasks)? > > After some debugging, I came across the "sys-" Threadpool. The CPU > consumptions seems to origin in one thread of this pool (usually the last > one spawned). Yet I could not figure out a solution. > > > I use the following configuration: > > > > IgniteConfiguration cfg = new IgniteConfiguration(); > cfg.setIgniteInstanceName(instanceName); > cfg.setConsistentId(nodeName); > cfg.setActiveOnStart(true); > cfg.setAsyncCallbackPoolSize(4); > cfg.setAutoActivationEnabled(true); > cfg.setNetworkSendRetryCount(5); > cfg.setDeploymentMode(DeploymentMode.PRIVATE); > cfg.setClassLoader(Thread.currentThread().getContextClassLoader()); > cfg.setPeerClassLoadingEnabled(false); > > cfg.setPublicThreadPoolSize(4); > > cfg.setLoadBalancingSpi(new AdaptiveLoadBalancingSpi()); > > TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder(); > ipFinder.setAddresses(Arrays.asList("127.0.0.1:48500..48503")); > TcpDiscoverySpi discoverySpi = new TcpDiscoverySpi(); > discoverySpi.setLocalPort(48500); > discoverySpi.setLocalPortRange(4); > discoverySpi.setIpFinder(ipFinder); > > cfg.setDiscoverySpi(discoverySpi); > > TcpCommunicationSpi communicationSpi = new TcpCommunicationSpi(); > communicationSpi.setLocalPort(49100); > communicationSpi.setConnectionsPerNode(4); > communicationSpi.setMessageQueueLimit(2048); > communicationSpi.setIdleConnectionTimeout(100); > > cfg.setCommunicationSpi(communicationSpi); > > cfg.setMarshalLocalJobs(true); > cfg.setIncludeEventTypes(); > > > Thank you very much in advance. > > Regards > > > > -- > Sent from: http://apache-ignite-users.70518.x6.nabble.com/ >
