20

我一直在考虑在一个使用大量写入的项目中使用 Redis。

因此,在我的服务器上设置好之后,我使用 Predis 创建了一个简单的 PHP 脚本,并带有一个简单的循环来添加记录。我还创建了第二个执行类似操作的脚本,仅在使用 PHP 的 MySQLi 的 MySQL 表 (InnoDB) 上。

我运行了一个 10k 循环、一个 100k 循环和一个 500k 循环,并且 MySQL 每次都击败 Redis。事实上,我添加的记录越多,MySQL 与 Redis 相比就越快。

Redis 周围有很多嗡嗡声(炒作?),我想相信我在这里遗漏了一些东西。

请教育我:)

谢谢!

这是我的 Predis 代码:

for ($i=0; $i<100000; $i++) {
    $predis->set('key'.$i, $i);
}

这是我的 MySQLi 代码:

for ($i=0; $i<100000; $i++) {
    mysqli_query($db, "INSERT INTO test (`key`, `value`) VALUES ('key$i', $i)");
}
4

1 回答 1

18

将predis与mysqli进行比较是不合适的

mysqli 扩展- 是一个扩展,而predis一个 php 客户端库。即,虽然 mysqli 是编译代码,但 predis 只是普通的 php -扩展更快

问题中显示的那种基准主要显示了 PHP 代码与扩展的性能损失。

比较喜欢和喜欢

如果您想比较写入性能 - 您需要与php redis 扩展进行比较。

于 2012-10-29T17:19:59.680 回答