In our project we are currently (still) using Apache Ignite 2.81. We are currently facing OOMs on server nodes when multiple clients are simultaneously fetching the content of a specific cache. So far, we thought the reason is that the data is stored only off-heap and therefore with each client-request a copy of the data is moved into the heap (-> Heap >= number_of_clients * size_of_cache). We expected to mitigate this by putting onHeapEnabled = 'True' for the given cache as according to our understanding only one copy of the data should then exist in the heap and it should therefore not explode anymore.
- Are our assumptions in general correct?
- Aren't the server nodes using some kind of byte-stream internally when responding the data to clients? In this case it would be even more surprising that with on-heap activated the heap still explodes.
We are aware that scaling the server nodes/providing more heap would be a solution here but we would be interested in finding a resource-saving one.