My game has a unlimited size map, and every grid of the map is lazy initialized as soon as any player discover it. I cached the data of map grids in a Dictionary with keys such as "x,y". When the number of players comes to 200, as they discover more and more regions of the map, the memory of my game will increace to 1G in one hour, and be killed by system soon.
I have tried to cache the map data into redis asyncly, but it will increace the cpu and I/O pressure obviously, and brings me many async logic bugs. So my question is, do I have any other choise to cache the map data?