Server for chuggle app
surajx / chuggle-server Goto Github PK
View Code? Open in Web Editor NEWServer for chuggle app
License: MIT License
Server for chuggle app
License: MIT License
Implement a logging module with following properties:
A Interval routine to check the health of available game servers is required to make sure the users coming to lounge and not fed with broken game server links.
Update the high scores collection after the consolidation request with a specified delay. If another consolidation request is received during the delay time then the delay is reset.
Game Server is a spaghetti with meat ball bowl: refactor and modularize. Add comments where ever necessary.
Randomize the request of leaderboard so that the consolidation server is not overwhelmed at a single point of time. This randomization also implies that emission of leaderboard via socket does not stress the game server.
The PORT environment variable should be renamed so as to relate the server it is being used for.
Use the strategy pattern to define the connection algorithm between user and game server. Existing implementation could become detrimental to swapping out websocket connection type with a more available and scalable solution.
Leaderboard data is huge compared to other data being emitted. Find out a way to compress the leaderboard data before emitting through the socket.
Create a rest path that would remove a lounge server from the collection of available game servers.
Implement an authentication system between
User<->Lounge
User<->Game Server
Can be access token based with user/pass.
The scores from a single game loop is stored in the local redis db. Once the score is sent for consolidation it is not needed by the game server. Flush the local db after the current batch of scores are sent for consolidation.
Ensure that all outgoing and incoming communication of User is encrypted.
Even though time consuming and overhead - WRITE IT!!!
For subsequent request of leaderboard generation for the same game-id serve it from in-memory cache and avoid db queries.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.