2009-12-11 63 views
0

在我的数据库(mysql)中,我有一个有50k数据(行/记录)的表。获取数据很快,但是Flash显示php数据的速度很慢,为什么?

我使用萤火虫进行测试,玩完游戏后,load_score.php和save_score.php的调用大约为380毫秒(毫秒)。

save_score.php只是一个正常的插入,没什么。的load_score.php,我使用以下查询:

SELECT name, score 
FROM `highscores` 
WHERE id =1 
LIMIT 0, 10 
  • 结果返回10行
  • 在0.0005秒查询返回(使用phpMyAdmin测试)
  • 我呼应数据回闪。

但是在我的游戏(flash)中,花了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

当我们不知道您以何种格式发送数据以及如何在Flash影片中处理数据时,大麦很难说些什么。通常,Flash使用与浏览器相同的http连接。 – TheHippo 2009-12-11 05:13:04

+0

你的意思是发送flash - php - flash?它在“变量”格式 – sqlnoob09 2009-12-11 05:14:54

+0

尝试使用Firebug +火狐,看看有多少时间在发送和reciving数据丢失和的其余部分中显示的信息丢失。 – TheHippo 2009-12-11 05:17:26

回答

0

不是“ '回答,但通过将两个请求合并为一个请求可以节省多达5秒的时间。保存脚本还会返回高分表。您至少会节省半秒钟(由萤火虫报告的转移时间),如果由于某些原因延迟闪光,可能会更多。

上述评论应该指出您在解决或至少确定根本原因方面的正确方向。

0

另一种方法是使用amfphp library,从而发送/ Flash中接收数据的本地AMF格式Flash可以快速的方式更快。

相关问题