0

我正在制作一个包含客户端、大厅服务器和游戏服务器的回合制纸牌游戏。有哪些跨语言和双向的方法(例如客户端请求 -> 服务器服务器响应 -> 客户端,以及服务器请求 -> 客户端客户端响应 -> 服务器)?

我研究过 JMS,但认为它对我的需求来说太重了(这个程序规模很小,而且我认为复杂性不适合这个解决方案)。我曾简要研究过 REST,但我认为这不符合双向要求。当然,有 RMI,但我希望能够使用 C++ 和其他语言开发客户端作为另一个学习练习。

老实说,我有点不知所措,因为我不想使用 JMS,因为我认为它太复杂了,但我不认为只使用 TCP 套接字并说使用基于 XML 的基本消息的协议将为程序提供良好的通信结构。

4

1 回答 1

2

我与之合作的研究实验室开发了一个名为“面向对象的分布式语义服务”的系统。

我们利用我们在跨语言序列化方面所做的一些工作,允许您用不同的语言编写客户端/服务器,并且底层消息是一种格式,可以由客户端/服务器进行序列化和反序列化,而不管它们的实现语言如何。

目前我们主要支持 Java/ObjectiveC。您可以查看聊天室教程,它应该让您对请求/响应的工作方式有一个基本的了解。

http://ecologylab.net/research/simplGuide/oodss/index.html

OODSS 专为游戏场景而设计……该系统最初是为了支持我们实验室的一位研究人员正在开发的游戏而编写的。关于 OODSS 的原始论文从头开始讨论了游戏的开发。这可能对你很有效: http: //ecologylab.net/technicalReports/oodss_TR_10_01.pdf

您可以应用类似的想法来允许使用尚不支持的语言的多个客户端。(您可能必须自己编写一些序列化/反序列化代码才能开始。)

祝你好运!希望有帮助!

于 2012-09-27T15:31:27.693 回答