去年我在 .NET 中编写了一个小型守护程序应用程序,它基本上启动了一个 Minecraft 服务器,并提供了一个基于 Web 的 GUI 来管理它。它会做其他事情,例如在进程崩溃时重新启动进程,以及其他有用的功能。
我们公司最近听说一家法国托管公司已经设置了他们的服务器,当最后一个玩家断开连接时,服务器会关闭,直到另一个玩家加入。现在,我一直在思考这怎么可能,并想看看对此有何想法。我的守护进程已经可以知道连接了多少玩家,所以这不是问题。
我的伪思维过程是...
- 最后一名玩家与服务器断开连接
- 守护进程接管服务器端口上的连接监听
- 收到连接后,保存连接包数据并重启服务器子进程
- 将保存连接传递给 Minecraft java 进程
我真的不知道如何处理最后一步,但这是我想出的最佳解决方案。有什么想法或建议吗?