我即将开发一个使用Java
语言的游戏服务器。
游戏是用C#
写的,他们将通过sockets
进行交流。
我能想到的唯一方法是使用 JSON
.
正确的方法是什么?
正确的方法是在服务器上
使用RESTful或基于SOAP 的Web服务边和客户端调用它。这也通过最低级别的套接字。
如果需要,您可以自己实现基于套接字的通信(没有 REST/SOAP)
但我不推荐它,因为它会使您的工作更加困难和容易出错。
但另一方面,如果你实施得好,这可能会更有效。
所以你有很多选择,这完全取决于确切的需求/要求。
如果你想正确地通信你的应用程序,我建议你考虑一个多线程服务器,其中每个工作线程都应该轮询打开的套接字并处理请求,你应该用一种低级I/O和多线程API编写所有这些。
虽然可以这样做,但我必须建议你将通信留给应用程序服务器,例如Tomcat服务器或类似的东西。 在那里,您可以将 Java 服务器部署为实现基于 REST 或 SOAP 的 Web 服务的 Web 应用程序。
这样,您就可以使用生产强度的服务器为您执行通信职责,并且可以专注于用 C# 编写标准 Web 服务客户端(我承认我在 C# 中几乎没有帮助,但我想这里有人会很乐意在那里帮助你)。
如果您正在寻找一个方便的 API/库来在应用程序之间进行通信,您可能需要考虑 zeroMQ。
对于 Web 服务器-客户端模型。您可能需要考虑实现 HTTP REST/SOAP 接口。