agar.io-clone icon indicating copy to clipboard operation
agar.io-clone copied to clipboard

[Discussion] Introducing a new network engine

Open huytd opened this issue 9 years ago • 5 comments

Well... it would be a rant if I call it's an engine :laughing:

I developed a new networking library - lit, the main idea is to replace Socket.IO (for this game)

lit was built on top of Engine.IO, the framework that built Socket.IO as well.

It focuses on transmitting binary data instead of string data (what Socket.IO is doing right now), I know Socket.IO is already supported binary data but it's not the reason to keep me from building another one :trollface:

The main reason is #5, #349 and #190, there are so many people email me and ask if this server is good for develop production-ready games or not, and I keep saying that it's not ready. Now, it's time to make it production-ready (okay, I know I'm a bit ambitious :D)

Honestly, I didn't have time to test or benchmark it yet, I think it's better to introduce it here, so everybody can join with me and see/test/benchmark/integrate it.

Let's discuss to see if we can use it and replace it with Socket.IO for this game server in the future or not :D

Thank you so much! Huy

huytd avatar May 27 '16 19:05 huytd

How far along are you in integrating this new alternative? I would be very interested in seeing how well this improves performance!

dbakes98 avatar Jun 27 '16 00:06 dbakes98

I'm so sorry. I'm busy with some other stuff recently and don't have enough time for the integrating process. I will try to make a small demo to benchmark this library, maybe in the incoming long weekend.

huytd avatar Jun 27 '16 01:06 huytd

Update: I made a demo with this engine, seems good, will do more testing and see if we can replace Socket.IO with this or not.

https://github.com/huytd/lit-demo/

huytd avatar Oct 08 '16 19:10 huytd

Great! I actually have some time on my hands, so I may be able to help you out on this one!

noahcoetsee avatar Mar 30 '17 00:03 noahcoetsee

@huytd Why use engine.io - its also incredibly slow. Use uWS (https://github.com/uNetworking/uWebSockets).

Andrews54757 avatar Aug 01 '17 00:08 Andrews54757