-1

我想在 AS3 中构建游戏并在 PHP/MySQL 中执行大部分逻辑,因为我在 PHP 方面的经验比在任何其他推荐的语言(如 JAVA)方面更有经验。

我已经阅读了很多关于 PHP 不是 PHP 套接字服务器的好选择的信息。主要原因是它无法处理超过 1000 个客户。

但我从来没有找到一个好的答复,为什么实际上是这样的?PHP进程是否在它之后崩溃?是否可以选择在不同的端口上设置例如 2 个套接字服务器?那么它会处理大约2000个客户吗?还是没有?

4

1 回答 1

0

如果你知道 AS,我实际上会推荐 Java 或 Node。AS3 与 Java 和 JavaScript 非常相似(有些差异),这将使转换变得非常轻松。你必须决定的魔法是每秒有多少消息通过你的每个客户端。如果负载较轻,首选Node。如果负载很重,请选择 Java。

但是,如果您想坚持使用 PHP,则需要从 CLI(而不是Apache)运行多个游戏实例。然后,您可以以任何您喜欢的方式通过标准套接字连接到它们。这很容易做到。

困难在于同步所有实例。为此,您可以让它们全部连接到一个专门用于将消息中继到服务器的实例,或者让它们相互连接。游戏通信理论书籍和教程将在如何做到这一点上派上用场。

如果使用 PHP,您的其他问题将是:

  • 每个守护进程的套接字连接限制
  • PHP 的单线程特性
  • 缓存
  • 从本质上没有这个的东西构建一个事件多客户端套接字接口

与Java相比,PHP在这方面处于严重劣势。然而,这是可能的。

于 2013-05-30T15:58:42.757 回答