Hello all! My name is Tom, I'm the person behind socket.ly - a global-ready solution for socket.io apps.
Socket.ly was created after spending countless hours and weeks tweaking infrastructure, configuring global IP records, setting up custom pub/sub services, and more for past projects that required a global real-time presence. Instead of containing this knowledge to these projects, I've made it simple for everyone to create their own global-ready real-time application with minimal changes.
Socket.ly extends beyond the traditional redis adapter and offers a truly global experience for your users, no configuration necessary. Users are routed to the nearest socket.ly datacenter and messages are optimized for speed across our global network. Configuring socket.ly for your project should only take a couple of minutes!
Feel free to ask any questions or leave feedback. I'm always interested in improving and hearing how socket.ly can enhance your app's real-time experience.
Hi! Could you please extend the meaning of word "global-scale" a bit? Does this only mean that users will connect to the nearest server or there are more tricks on backend to scale PUB/SUB? You are writing that "messages are optimized for speed across our global network" – could you also elaborate more what do you mean saying this?
Great question and something we can certainly make more clear.
Scaling pub/sub usually requires some time and maintenance, especially if you're going to have multiple pub/sub instances running in different datacenters. Normally this setup would involve a parent-child relationship where you have one master server that communicates to all others. Scaling this and making it fast across the world can be challenging, especially for development teams who are looking to make real-time products outside their country's origin with limited resources.
Essentially socket.ly has this all preconfigured behind-the-scenes. Optimized for speed means that we automatically take care of the nitty-gritty like compressing and choosing the right servers to send events to depending on who's connected to which servers and sharing which information. It's a bit of balancing act which is why we've made it into a service that any team who uses socket.io can utilize.
Thanks for the question, I hope that helps. Always happy to answer more.
4 comments
[ 3.2 ms ] story [ 23.9 ms ] threadSocket.ly was created after spending countless hours and weeks tweaking infrastructure, configuring global IP records, setting up custom pub/sub services, and more for past projects that required a global real-time presence. Instead of containing this knowledge to these projects, I've made it simple for everyone to create their own global-ready real-time application with minimal changes.
Socket.ly extends beyond the traditional redis adapter and offers a truly global experience for your users, no configuration necessary. Users are routed to the nearest socket.ly datacenter and messages are optimized for speed across our global network. Configuring socket.ly for your project should only take a couple of minutes!
Feel free to ask any questions or leave feedback. I'm always interested in improving and hearing how socket.ly can enhance your app's real-time experience.
Scaling pub/sub usually requires some time and maintenance, especially if you're going to have multiple pub/sub instances running in different datacenters. Normally this setup would involve a parent-child relationship where you have one master server that communicates to all others. Scaling this and making it fast across the world can be challenging, especially for development teams who are looking to make real-time products outside their country's origin with limited resources.
Essentially socket.ly has this all preconfigured behind-the-scenes. Optimized for speed means that we automatically take care of the nitty-gritty like compressing and choosing the right servers to send events to depending on who's connected to which servers and sharing which information. It's a bit of balancing act which is why we've made it into a service that any team who uses socket.io can utilize.
Thanks for the question, I hope that helps. Always happy to answer more.