小编jru*_*nas的帖子

从 PHP GD 图像对象将图像存储到数据库的有效方法

我需要生成大量小型 (1-10KB) PNG 图像(>1000 万)并将其存储到数据库中。我唯一关心的是图像/秒吞吐量。目前我知道两种将GD图像对象存储到数据库的方法:

使用输出缓冲区:

ob_start();
imagepng($image);
$imageData = ob_get_contents();
ob_end_clean();
Run Code Online (Sandbox Code Playgroud)

使用临时文件(tmpfs/ramfs):

$tmpFilePath = '/dev/shm/file_000.png';
imagepng($image, $tmpFilePath);
$imageData = file_get_contents($thumbnail);
Run Code Online (Sandbox Code Playgroud)

更新。还有第三种方法:使用 PHP 内存流:

// PHP streams are NOT supported
$tmpFilePath = 'php://memory';
imagepng($image, $tmpFilePath);
$imageData = file_get_contents($tmpFilePath);
Run Code Online (Sandbox Code Playgroud)

我的问题是还有其他方法将图像写入数据库吗?每种方法的优点/缺点。也许值得编写一个自定义流,将数据直接写入数据库?

注意:不能将图像存储到文件系统。

基准测试结果:

生成并保存 10k PNG 图像

php gd

5
推荐指数
1
解决办法
2848
查看次数

G-Wan网络服务器已经死了吗?

我们现在使用这台服务器差不多一年了.

上次论坛帖子见于2011年11月.上次服务器版本发布于28/03/12.

只是想知道是否有人知道公司内部发生了什么?我们应该期待什么,还是应该开始寻找其他选择?

release g-wan

-1
推荐指数
1
解决办法
1040
查看次数

标签 统计

g-wan ×1

gd ×1

php ×1

release ×1