Best - and currently active - networking lib?

Hi guys.

I’m about to extend my small engine with networking. It will be used in a FPS game, so I’ve chosen UDP over IP.
Before I jumped in, I’ve done some research and found that the common recommended lib for that is Kryonet, which is not active for a year now, so I think I’ll skip it.

Is there an existing - and active - lib that is commonly used or I have to implement my own? My main goal is not to create a game - it’s only a side goal -, but learn more about game developing and Java. My bets are either Netty.io or MQTT with for eg. Paho client.

Any suggestions? - either a lib or anything.

Thank you!

If it aint broke, don’t fix it. KryoNet is well tested, broadly used. Surely it’s good enough.

Understood, but there are lots off issues reported, not even responded. Would you use it for your future projects?

Aeron for IPC and server/server communication, Netty for client/server communication. Also, Vert.x if you’re looking for a higher level solution (based on Netty).

Aeron is designed for extremely low latency and destroys every other library in that metric. Many frameworks have started adopting it as their backend. Random examples: Akka Arterty, Onyx, Deeplearning4j. It is highly tunable and has a simple and very focused API. But being a pure transport layer, it doesn’t provide any higher level features. Yet. There are plans for more features (by the same creators), either built-in or in new libraries that work closely with Aeron. The next Aeron release is getting persistence and there’s Aeron#211 that will make it great for games. Aeron has native support for SBE, but you can use any serialization framework that works on NIO buffers.

Hm… thanks Spasi!

Neve heard of Aeron, will check it out. I thought Vert.x can be used for building rest API like jersey, now have to look at it more deeper.

I used KryoNet and was so simple to use, would use this again.

It’s too bad Martin Thompson stopped writing blog entries. Still some great stuff there: http://mechanical-sympathy.blogspot.fr/

Finally I chose vertx, seems easy and fast :slight_smile: