FUTURESCALE

FUTURESCALE

Software, precisely built.
FUTURESCALE

Multi-server Chat System Built for Dashboard Hosting

Dashboard Hosting Banner

When the database becomes a bottleneck, just remove the database!

John at Dashboard Hosting reached out to us about a chat system they'd built which had reached a wall. It was a Node-based instant messaging feature which had worked pretty well at first. But the number of users grew, and then it didn’t.

Even though they had a number of load-balanced server instances running, they found that the Redis database they were using to track connected users was a big bottleneck. No matter how many instances they ran, they all had to talk to that database.

We got them up and running with a database-free implementation of their chat server and received permission to open-source and write about it. There are links to the source code and deep dive article at the end, but here are the main interactions that make it possible.

Client Connection
Client Disconnect
Client Sends IM
Server Connects to Peer
Server Recieves Forwarded IM