In this example, we estimated and average size of 100 bytes per message.
We later estimated a server can handle 50k concurrent connections, and to handle 500 millions connections we’d need 10K servers.
if the user is always on a specific server, why not cache their message history there? The memory use would be minimal even if we stored a large history there
100 bytes per message * 50K users * last 100 messages per user = 500MB
and caching the last 100 messages even sound extreme to me.