【发布时间】:2010-02-16 23:36:12
【问题描述】:
我正在制作一个 Javascript(前端,PHP 后端)游戏。在这个游戏中,它每 2 秒检查一次服务器是否有更新。有一个 1 sql 调用正在运行,最后我使用 $mysqli->close() 关闭 SQL 连接。 where 中的列都被索引。
我遇到的问题是在它运行了一段时间之后 MYSQL 开始产生大量的睡眠进程。有谁知道这可能是什么原因造成的?
【问题讨论】:
-
我不知道这是否完全相同,但我无法在整个游戏过程中为某人提供可靠的 php 进程。 Comet 似乎不打算与 PHP 一起使用。从我读到的内容来看,我必须在一场比赛的整个时间内为人们开放一个流程。这只是浪费,我无法通过使服务器更慢来解决问题。我遇到的问题是 mysql 问题而不是 javascript 问题,不能保证这也不会产生睡眠。更不用说大量的 php 处理了。
-
每 2 秒轮询一次并不比仅仅保持进程运行更有效率
-
@Iscariot - 但您每 2 秒轮询一次。将其乘以玩游戏的用户数量……效率也不高。
-
这对我来说不是。也许我错了,你比我更清楚,但如果我每 2 秒运行一个需要 12-20 毫秒的进程,我每 2 秒运行一次,持续 5 分钟。 3000 毫秒(20 毫秒)或 300,000 毫秒使其保持运行。我认为留下它会有害,这是不对的吗?我并不完美,这就是我寻求帮助的原因,所以如果我错了,请告诉我我的方式的错误。
标签: php javascript json game-development