IGNITE-12682 allows now to create sent/received counters by message direct type statically during SPI initialization. Data structure for this counters does have any contention so we can remove thread local HashMap's for this counters. As result we will also reduce memory footprint (we can use IntHashMap which is more memory effective and we will have only one map instance instead of map per thread).
Also there is a couple of problems which could be solved during implementation this issue:
- SPI uses internal API while we should extend IgniteSpiContext that will provide access to the GridMEtricManager functionality.
- MetricManagerResource annotation is redundant and has only one usage.