MySQL比Redis更快。我在这里错过了什么吗?[已关闭]

2022-08-30 20:06:02

我一直在考虑在一个使用大量写入的项目中使用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)");
}

答案 1

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

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

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

比较喜欢与喜欢

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


答案 2

推荐