0

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

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

你怎么看待这件事?

4

4 回答 4

1

我已经研究过使用它们进行托管,并且听说过有关它们的支持的好消息。但是,除非您使用他们提供的专用服务器(而不是基本共享托管服务),否则您可能没有可用资源来支持游戏服务器。

如果您可以自己处理服务器配置,或者对如何设置服务器的详细说明很好,那么我强烈建议您使用每月 20 美元的 linode.com 基本计划。我将它用于网站托管,它在性能和灵活性方面产生了巨大的差异。此外,我还看到了在 slicehost、rackspace 和 Amazon S3 之间进行的一些性能基准比较,结果让所有这些(尤其是 Amazon)都被淘汰了。基准是 2 或 3 年的历史,但它仍然很有说服力。

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

我要补充一点,您可能会研究 APE 服务器(AJAX 推送引擎)背后的技术。它是一个高效的聊天系统,几乎可以与任何服务器端语言和前端一起使用。

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

于 2012-04-23T19:53:00.750 回答
0

您不应该听特定于编程语言的论点,大多数时候它们是个人喜好。您想要做的当然可以使用 PHP。你可以用每种语言进行好的和坏的编程。如果您知道如何使用 PHP,那么对于回合制游戏来说,PHP 就足够了。使用你最熟悉的编程语言,你会没事的。

更重要的是:您希望您的游戏成功,1und1无法处理“成功”的方式,因为其本地化且不可按需扩展。如果你想赚钱或传播,你真的不应该害怕投资一些钱并去亚马逊的基础设施。你将不得不学习一点,但这绝对是值得的。

大多数 IDE(Zend Studio、PHP Storm 等)甚至已经有了很好的集成。共享主机或本地化存储主机不是您想要的,因为如果您的应用程序出名,它们将无法处理全球需求。而且您将遇到安全问题。如果您真的希望您的游戏能够成功,那么即使是 VPS 也会几乎立即达到其极限。

您可以尝试先使用 1und1 来扩展您的游戏,然后根据需要寻求更好的解决方案。但也有不少游戏因为需求远高于预期而死去。最糟糕的是,你必须不那么欣喜若狂,但要更现实一些。

总结一下:只要使用你最熟悉的语言,如果你相信你的想法,不要害怕投入少量资金来满足全球市场,创建你自己的协议,尽可能少的数据传输,请多投票往往比“x秒”,因为等待对手的一秒感觉就像三天。而你正在路上。

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

于 2012-04-24T03:30:34.490 回答
0

我就是这样做的,因为您的游戏正在向服务器请求拉取请求,让我们跳过一步。那是询问MySQL服务器。所以这就是我要做的方式。

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

如果您的预算很小,我建议您查看此选项。我真的想不出你可以在不将数据存储在某处的情况下做到这一点。

于 2012-04-24T02:26:20.327 回答
-1

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

  1. 使用您的 android 代码向 Web 服务器上的 PHP 文件发送请求。
  2. 从这个网络服务器,您可以以 firebase Messaging 的形式发送广播消息,该消息将传送到您订阅主题的所有设备。
  3. 所有侦听此 FCM 的 android 设备都可以响应(取决于您的代码设置的参数)。
于 2020-12-03T08:57:15.723 回答