Hazelcast memory considerations
Learn about what you need to consider for Hazelcast’s memory consumption when you allocate memory for the Edge Flow Manager.
Hazelcast is an in-memory data grid, used as cache manager for Edge Flow Manager. Hazelcast runs in an embedded mode, in the same JVM as the Edge Flow Manager.
Hazelcast’s memory consumption has to be considered as well when you allocate memory for the Edge Flow Manager.
To demonstrate Hazelcast memory consumption scales linearly with the number of agents, the baseline test is run with 100k and then with 20k agents. The expectation is that 5 times less cache is required in the second case.
Results
100000 Agents | 20000 Agents | Ratio | ||||
---|---|---|---|---|---|---|
Test Case | Total Items | Total Size MB | Total Items | Total Size MB | Total Items | Total Size |
Agents registering to EFM | 234,000.00 | 215.00 | 46,500.00 | 42.80 | 19.87% | 19.91% |
Agents heartbeating to EFM | 1,096,000.00 | 808.00 | 202,900.00 | 160.90 | 18.51% | 19.91% |
Takeaways
The expectation was to see linear scaling in cache items/sizes which is in line with the results. Cache consumption changes proportionally with the number of agents, for example, 80% less agents result in 80% less cache consumption.