Online Card Game Architecture Design

It has been a while now since I have made a client-server system, and the last time was when I was in university where I had a ready made web server to deploy to. So when my artist friend came to me with the idea to make an online card game I couldn’t help but feel a little stupid on the subject.

What I’m looking for is some advice and recommendations as to what systems I should use to implement the following game system. I can look up tutorials later, but I want advice as to what direction I should take.

The client for the card game will be designed with LibGDX, which will maintain a TCP connection to the server (game is turn based so I figured TCP is fine). The server is then connected to a MySQL database which holds account details etc. What I’m fuzzy on is what to use to make the server, and what to deploy it on. I was hoping to use standard java ServerSockets for connections, and run the java servlet on an apache tomcat server (as that is what I have done in the past). Alternatively, I have been tempted by the RedDwarf ServerApp to administer a game server, but I am concerned as it seems to be a pretty out of date piece of software.

What would you guys recommend I use? Particularly for supporting the server.

https://github.com/EsotericSoftware/kryonet is pretty amazing.

I second this, using Kryonet I was able to quickly setup a simple program that would show the same character in the same position on another computer.

I felt like superman.