johndoebr replied to johndoebr's topic in Coding and Game DesignThank you for all replies. I received a suggestion related to #5 and #6 steps, so I postpone and invert the token validation. Also for clarification sake, #1 and #2 steps don't happen every Client request, it's a "heartbeat" feature, that checks periodically which servers are available and make it ready when a Client asks for it. This is the updated sketch flow: About CDN, yes, i will need it. But I have little to no knowledge about hosting, the CDN distributed server could be my own "Front-end" server? As right now they would be mostly static HTML with a login / server list screen. Which hosting out there could provide me a nice bandwidth quota for this purpose? About analytics, I still didn't think about that, but probably I will make use of it in the future. It seems a nice suggestion staying inside auth db, my World Servers could send it periodically through Messaging (I think it would be ApacheMQ in my current scenario). About backup db, as i said before, for not having knowledge about hosting services, if I host at OpenShift, there is a chance to lose all my DB? I mean, wouldn't they make a catastrophe recovery for me? I don't see the need to cloud my World Server and its DB for performance purpose as the World Server will be located in a specific geographical location (i.e. US West, US East, South America, West Europe, etc), it's expected the players will choose the World Server which is near to him. About overengineering, yes, someone had told me that before, I think it might be really over, but I don't know how the current browser games work, so I tried to do my best regarding my developer knowledge. Initially, I might put some applications in the same server to save some money and reduce the "over", but anyway I split as "Front", "Auth" and "Worlds" as being different applications, so I could have some flexibility to choose where I will deploy each one. Yet, I still don't know how real world scenarios work. Talking for a Travian game, how much is too much? I made some research on a few Java hosting services, with a JBoss + 512ram + 1gb hdd machine, I would spend about $20~30/month per server, is it reasonable? And for a distributed Front-end (and possible CDN) server, how much is a good price? I can only be sure if my server will hold it all once i start some stress tests, until that I am mostly blind for the lack of experience. Thanks in advance!
johndoebr posted a topic in Coding and Game DesignHi all, I have been working as a Java Developer for over 7 years and while studying AngularJS I decided to create a browser strategy game for fun, like Travian/TribalWars/Ikariam etc... Right now I am thinking about how the server architecture should be. I tried to find some examples on how this kind of games distributed their servers but I couldn't find any useful resource, so I came with my own. My sketch and authentication flow (follow the numbers from 1 to 9): In a general way, is that a suitable one? From my personal developer experience I decided it was a safe idea to split the public front-end from ther auth and game servers. Do you think there are any Cons in this architecture? About hosting, which service/host is most suitable for each server? 1) Authentication server, single point 2) Front-End server, distributed over the world 3) Game Servers, each one in its specific country I am open to new ideas and changes! Thanks in advance!