Josh194 / FMCB

A platform that allows the linking of multiple applications/games together in various ways.
GNU General Public License v3.0
2 stars 1 forks source link

Provide support for multiple distributed servers. #32

Open Josh194 opened 3 years ago

Josh194 commented 3 years ago

Crazy as it sounds, this could actually be quite useful in certain, large scale, networks. For example, imagine a network with two clients in NA, and two in EU. With the current system, a single server location would have to picked, let's say NA. The NA clients would enjoy low latency, while the EU clients would have high latency, potentially making the system unusable, even if the majority of traffic was between each other. If multiple servers were allowed, a second one could be set up in EU. Traffic between the two EU clients or the two NA clients would have a low latency, while only traffic between regions would be slow. Servers could route traffic between each other, reducing the strain on individual clients, and making the system a bit more secure and robust. This could theoretically be done with the future feature system, but it would be nice to have the functionality built in, as performance would be a focus. One option would be to have two components, a routing component, and a core. The routers would gather traffic from local clients and route it to other clients or servers, while the core would manage the whole system. Routers would only need to install the extensions used by local clients, allowing for extremely complex networks at little overhead.