带宽与数据库查询

时间:2015-05-06 01:16:55

标签: php mysql ajax performance

我显示我希望用户能够删除的图像。我这是用AJAX请求做的。

最佳做法是:

  1. 只传递图像的ID,使用mysql查找该记录的文件名,然后删除该文件?

  2. OR

    1. 传递ID 图片的src,以便我可以立即删除图片而不查找图片?
    2. 一个使用更多带宽,另一个使用更多处理能力。

      无论哪种方式我都需要ID,因为我必须删除记录。

2 个答案:

答案 0 :(得分:3)

将评论转换为答案,因为我认为这很重要。

就优化而言,你所考虑的是如此微不足道,以至于不值得花时间。

就安全噩梦而言,允许用户从文件系统中指定删除的任意字符串似乎有点......粗心。

由于您需要验证src是否与id正确配对,因此无论如何都需要在数据库中进行查找,这会使您的问题无效。

答案 1 :(得分:1)

任一请求(带或不带路径名)的网络有效负载大小很可能适用于单个IP数据包1.5KiB,即使协议开销也是如此。因此,网络带宽的差异并不重要。

另外,除非您的应用程序是某种特殊情况,否则图像删除可能比大多数情况下更为罕见。如果我是你,我不会担心这种开销。

我建议你把精力放在安全问题上。发出请求的用户是否有权删除特定图像?不受信任的用户是否容易进行破坏性的批量删除?