在我的数据库(mysql)中,我有一个包含50k数据(行/记录)的表。
我使用firebug进行测试,在玩游戏后,对load_score.php和save_score.php的调用大约是380ms(毫秒)。
save_score.php只是正常插入,没什么。 load_score.php,我使用这个查询:
SELECT name, score
FROM `highscores`
WHERE id =1
LIMIT 0, 10
但是在我的游戏(闪光灯)上,需要11秒(手动计数)才能加载并保存分数。为什么时间差异如此之大?
当Flash收到php数据时,它是否会出现问题,显示的过程很慢?
还有其他原因导致显示时间延长吗?
(如果您需要更多信息,请告诉我们)
Firebug测试结果:
================================================================
= File | firebug time | actual/on web time =
================================================================
= load_score.php | 435 ms | 5 seconds(before it calls save_score.php)
= save_score.php | 643 ms | 4-5 seconds(before displaying highscore table)
================================================================
所以显示高分的总时间= ~10秒
答案 0 :(得分:0)
不是'答案',但通过将两个请求合并为一个,您最多可以节省5秒。保存脚本也会返回高分表。你至少会节省半秒钟(萤火虫报告的转移时间),如果由于某种原因闪存延迟,你可能会更多。
上述评论应该指出您在解决或至少确定根本原因方面的正确方向。
答案 1 :(得分:0)
另一种方法是使用amfphp library,从而以Flash原生AMF格式发送/接收数据,Flash可以更快地加快速度。