用于Android的PHP服务器基于多人游戏?

时间:2012-04-23 19:42:57

标签: php android

我为Android开发了一款回合制游戏,现在我想添加多人游戏。我不想使用像“skiller”这样的提供者,我想开发自己的服务器。

我没有专用的服务器,但我有一个“1和1”的php托管。像游戏服务器一样使用这个托管是个好主意吗?我的想法是我的Android游戏每隔X秒轮询一次服务器,等待对手的移动。

你怎么看?

4 个答案:

答案 0 :(得分:1)

我已经考虑过使用它们进行托管,我听到了很多关于它们支持的信息。但是,除非您使用他们提供的专用服务器(而不是基本级共享托管服务),否则您可能没有可用于支持游戏服务器的资源。

如果您可以自己处理服务器配置或者有关如何设置服务器配置的详细说明,那么我强烈建议您使用每月20美元的linode.com基本计划。我正在使用它进行站点托管,它在性能和灵活性方面有很大的不同。此外,我已经看到它,slicehost,rackspace和Amazon S3之间进行了一些性能基准比较,它将所有这些(特别是亚马逊)从水中吹走。基准测试是2或3年,但它仍然很有说服力。

Linode会让你在服务器的法律范围内做任何你想要的事情。因此,如果您想要托管成人网站,他们就不会有问题。他们可能在设置垃圾邮件服务器或类似的一些阴暗的东西时遇到问题。但是看起来其他一切都很酷。此外,他们可能是最实惠的选择。

我想补充一点,你可能会研究APE服务器(AJAX Push Engine)背后的技术。它是一个高效的聊天系统,几乎适用于任何服务器端语言和前端。

http://www.ape-project.org/

答案 1 :(得分:0)

这就是我要做的,因为你的游戏要求服务器提取请求让我们跳过一步。那就问MySQL服务器了。所以这就是我的方式。

从它听起来像是一个html5游戏意味着你可以在用户手机上设置cookie。我会有一个cookie甚至是一个javascript var然后存储一个JSON或ARRAY字符串。从这里你可以将1或0推送到PHP脚本,希望能够将其发送给用户或将其存储为.txt文件,众所周知,从mysql获取数据的速度较慢,如果你有400个用户所有这些都以5秒的间隔进行,你将关闭大多数共享服务器,它们不够强大,无法做你想做的事。

如果您的预算很少,我建议您查看此选项。我不能想到你可以做到这一点,而无需在某处存储数据。

答案 2 :(得分:0)

你不应该听编程语言特定的论点,大多数时候他们是个人喜好。你当然可以用PHP做什么。你可以用各种语言编写好的和坏的编程。对于基于回合制的游戏,如果你知道如何使用PHP,那就足够了。使用您最熟悉的编程语言,您就可以了。

更重要的是:您希望您的游戏取得成功,1und1 能够处理“成功”的方式,因为它具有本地化且不可扩展的随需应变性质。如果你想获得金钱或利差,你真的不应该害怕投资一些的钱并去亚马逊的基础设施。你需要学习一点,但绝对值得。

大多数IDE(Zend Studio,PHP Storm,...)甚至已经有很好的集成。共享的托管服务商或本地化的存储托管服务商不是您想要的,因为如果您的应用程序成名,他们将无法处理全球需求。你会遇到安全问题。如果您确实希望您的游戏取得成功,即使是VPS也会立即达到极限。

您可以先尝试使用1und1来增加游戏,并根据需求提供更好的解决方案。但是有些游戏因为需求远高于预期而死亡。关于这一点最糟糕的事情是你必须考虑更少的欣快,但更现实。

总结一下:只要使用您最熟悉的语言,如果您相信自己的想法并不担心投入小额资金来满足全球市场,请尽可能减少数据传输,创建自己的协议,以及请比“x秒”更频繁地进行投票,因为等待对手的第二次感觉就像是三天。你正在路上。

进展顺利!并在完成后发布链接:)

答案 3 :(得分:0)

您可以使用Firebase消息传递服务来实现相同的功能。此外,您必须有一台Web服务器(例如PHP)。

  1. 使用您的android代码将请求发送到Web服务器上的PHP文件。
  2. 您可以从此Web服务器以Firebase Messaging的形式发送广播消息,该消息将传递到您订阅的主题的所有设备。
  3. 所有监听此FCM的android设备都可以响应(取决于您的代码设置的参数)。