PHP的MySQL查询博客数据增加/加载Web服务器上的内存

时间:2018-08-31 17:15:27

标签: php mysql blob

我有以下代码从数据库生成图像,该图像可以缓存一个月。

我有一次机器人攻击,在一分钟内将图像加载了约3000次。当数据库服务器运行良好时,它破坏了我的Web服务器。 (此后,我开始使用云前端在边缘服务器上缓存,从而解决了该问题)

为什么此代码会导致Web服务器在负载下崩溃,因为它只是对LONGBLOB的简单索引查询。它会占用大量内存吗?

    $file_id = 1;
    //Gets file from database based on id SELECT * FROM files WHERE file_id = 1
    $file = $this->Appfile->get($file_id);

    $this->load->helper('file');
    header("Cache-Control: max-age=2592000");
    header('Expires: '.gmdate('D, d M Y H:i:s', strtotime('+1 month')).' GMT');
    header('Pragma: cache');
    header("Content-type: ".get_mime_by_extension($file->file_name));
    echo $file->file_data;

0 个答案:

没有答案