数据库操作,它非常昂贵吗?

时间:2011-03-19 13:24:13

标签: php mysql

我有一个名为playlist的表,我使用display_playlist.php文件显示这些详细信息。 屏幕截图display_playlist.php

enter image description here

每次用户点击“向上”或“向下”按钮排列歌曲顺序时,我只是更新表格。但我觉得不建议经常更新数据库,所以有没有有效的方法来完成这项任务。

我仍然是AJAX的新手,所以如果AJAX是唯一的方法,请你详细解释一下。提前告诉你。

4 个答案:

答案 0 :(得分:1)

您可以拥有一个保存按钮,因此不会在每次移动时更新,只会有一次更新,您可以一次更新每一行。这也让你有一个取消按钮供人们刷新它的方式。

答案 1 :(得分:1)

您可以这样做,以便用户可以随意更改;推迟将最终结果写入数据库,直到他们选择从页面继续。

答案 2 :(得分:1)

相对而言,是的,点击数据库是一项昂贵的操作。但是,如果播放列表状态是持久的,那么你必须在某个时刻点击数据库,这只是一个时间/频率的问题。

您可能尝试的一个简单优化是,而不是立即将用户对服务器所做的每次更改发送给服务器,允许他们进行他们想要的许多更改(使用一些客户端javascript来保持UI处于正确状态)和提供“保存播放列表”按钮,他们可以按此按钮立即将所有更改提交到服务器。这将减少数据库命中率,以及对服务器进行的往返次数(就用户体验而言,往返服务器的往返程度远远高于数据库命中)。

更广泛地说,你不应该因为假设的性能问题而陷入困境。您的应用程序是否太慢而无法处理其当前负载(如果是这样,您是否已进行任何分析以验证确实是这个数据库查询确实导致了该问题)?如果没有,那么你现在就不用太担心改变它了。

答案 3 :(得分:0)

如果您真的想避免更新数据库,可以试试一些基于JavaScript的MP3播放器,它允许您将路径传递给* .mp3文件。

然后我建议您使用Jquery UI - Sortable

并使用它将歌曲列表更新为Flash播放器..