3 ms·
Ah, interesting question. I had never implemented a chat server before and initially read the IRC/XMPP specifications but Slack felt like a "superset" of both (
by sysk 11y ago
Ah, interesting question. I had never implemented a chat server before and initially read the IRC/XMPP specifications but Slack felt like a "superset" of both (federation/p2p wasn't a priority for me) and I was more familiar with web protocols.
The stack is Node.js and PostgreSQL (I probably reinvented some kind of message queue). There is a "dumb" websocket server that just receives/sends events from/to the backend server. Both the websocket and backend servers can scale horizontally.
I haven't written any XMPP/IRC gateways for now though I suppose it wouldn't be that difficult to do.
- onyxraven 11y agoFun. From everything noted about Slack, thats all they've got as their 'core' as well (PHP/MySQL I think, with maybe nodejs websockets).
- toomuchtodo 11y agohttps://twitter.com/SlackHQ/status/500007057937145856 https://twitter.com/SlackHQ/status/500007057937145856 https://twitter.com/SlackHQ/status/521894442064560128 https://twitter.com/SlackHQ/status/521894442064560128 https://twitter.com/SlackHQ/status/458391373994270720 https://twitter.com/SlackHQ/status/458391373994270720