Hi, I am trying to figure out the best (most efficient, least impactful) way to join and dynamically query a running Ignite cluster for ThreadPool *metrics* and AtomicSequence Reserve size? I am trying to determine the optimal values for these parameters in our environment with respect to throughput and timeliness. Any other suggestions for parameters to look at for performance tuning parameters would be helpful.
We are running Ignite 2.12.0 as a Service Grid (Service Spi) for 5 micro services, on Java 11 on RHEL 7 Cluster of 6 Server Nodes - the BLT (on 6 RHEL 7 hosts) and 8 Client Nodes (on 4 RHEL 7 hosts). All hosts are VMWare VMs and configured using Spring XML configuration files. The Cluster is currently configured without persistence, but Ignite persistence [1] has been used in the past. All the documentation references calls to IgniteConfiguration.getPublicThreadPoolSize() (for instance)[2], but it just returns the values for the current node, not values from the running *cluster*. I've enabled the new metrics ExporterSpi with the *metric.log.LogExporterSpi*[3], but this logs everything! I only want to periodically get a few of these metrics values via this method or a more direct method such as doing a get* from the IgniteConfiguration, but that fails miserably. Even getting the IgniteConfiguration from Ignition.ignite(String <ClusterName>).configuration() returns the same information??? I have not tried Ignite.ignite(<Spring XML ConfigFile>)? Also, with respect to Thread Pool Sizes, I assume when the documentation references the thread pool size can have a value in the range of *max(8, <total number of cores>)*, the number of cores is CPU Core values, correct? Any help or examples that you can point me to would be greatly appreciated! Thanks in advance. Greg [1] - https://ignite.apache.org/docs/2.12.0/persistence/native-persistence [2] - https://ignite.apache.org/docs/2.12.0/perf-and-troubleshooting/thread-pools-tuning [3] - https://ignite.apache.org/docs/2.12.0/monitoring-metrics/new-metrics-system
