2008-12-17 71 views
2

我是一名即将开始我的考试项目的学生,我将负责针对Flash Player的在线游戏的服务器实施。 我很难决定是否应该在Erlang中编写我自己的轻量级服务器或使用开源Red5。我应该在Erlang编写自己的flash服务器还是使用Red5?

我的经验是,java开发人员倾向于过度复杂化使API难以工作的事情,对于Red5来说这是真的吗?在同步游戏的过程中,它是如何执行的?

也许我自己的Erlang服务器会更容易在几台机器上工作和分发?

所以问题是我应该写我自己的Erlang闪存服务器还是使用现有的Red5?

编辑:我想我需要决定我的目标是:设置一个在线游戏或学习如何从零开始实施多用户服务器。

回答

3

如果你可以用java来编程,那么我会说使用Red5--实现你自己的服务器可能会很微不足道,但是我想你可能会发现有更多的东西比你想象的要多现在。

但是,如果你想在erlang中编程,并且认为你会有很多乐趣开发你自己的服务器,所有的手段都是为了它!

也取决于你的项目的目标 - 你是否必须证明你可以得到一个在线游戏(去Red5),还是你必须证明你可以编程一个分布式多用户游戏服务器? (去为自己的项目在二郎山progammed)

BTW:我使用http://www.smartfoxserver.com/我目前的项目

3

我认为你需要为自己估计实现你自己的轻量级服务器所付出的努力。通常情况下,自己的需求是小而特殊的,实现满足它们的服务器是一种方式。

另外检查出Blaze DS(Java闪存服务器)和Juggernaut(红宝石闪存服务器)。我认为也许Juggernaut是针对特定用途的,超越你的,但我不确定。

+0

是的,基本上我需要从服务器得到两件东西,让所有的用户同步并存储关于游戏状态的一些信息,而我认为erlang中的Mnesia对此将是完美的。 BlazeDS看起来很有趣,更关注推动数据。 – finpingvin 2008-12-17 13:11:54

+0

关于Blaze DS的重要提示,或许是比Red5更好的选择。 – finpingvin 2008-12-17 16:53:21

+0

请不要犹豫,我的答案投票。 =) – PEZ 2008-12-17 18:16:50

1

为什么推倒重来的一个?单独使用AMF是一个复杂的野兽来实现,只需看看整数编码等基本内容的文档...如果你不需要流媒体功能,并且AMF是你想要的,你也可以使用PyAMF(Python)或者AMFPHP。此外,您可能会评估游戏最终如何运作,而不是您重新实施AMF的方式。

相关问题