Hey everyone!I am currently working on a project that requires a realtime server, and I have a lot of questions I cannot find answers to. Long story short: I will have a significant amount of people connecting to something, sharing data with each others (in rooms), and some processing to do with said data server side. I'm guessing I will have about 10k users max (especially at launch), but overall about 200 users at all times. Processing should be fairly light operations overall, and there will be about 1 message in/out per second per user, if not less.I'm considering sockets for communications, which is most likely the best way to handle everything. I have been looking at SocketCluster, which seems like a great fit for what I need to do. I have done a lot of research over the past few weeks, and here are things I'm still not sure about:How do I properly deploy that kind of app on a server? What's the best way to monitor it, store/backup data, and make sure it doesn't crash? (this is something I found lots of resources about, but maybe for my specific setup some solutions are better than others...)How many servers should I have ready at launch? How can I know when a new server is needed? Or not needed anymore?What would best the best service to host that stuff on?When time comes to update a server, do I just kill it, update the server code and restart? Is there any way to not kick users out when that happens?Should I have a single server with multiple instances of the server (which seems to be how SocketCluster works), or multiple physical servers?Overall, is this a terrible idea and is there a better way I'm not aware of?I am really struggling to find proper articles about that stuff, and besides one-off tutorials or somewhat unrelated post-mortems, I never saw anything that gives me confidence in that project.I'm really afraid that I won't be ready to scale properly when time comes, and since I'll have 20 other things that will probably be on fire at the same time knowing ahead how to keep up with demand will be very extremely valuable to me.Thank you so much for taking the time to read, big warm hugs to all of you!
Submitted July 09, 2017 at 10:24PM by aguynamedivan
No comments:
Post a Comment