我在页面上使用了几个mysql查询,使用mysqli prepare语句从多个表中获取数据。
假设我在页面上的数据库表中有20个查询。由于查询太多,我想通过将结果存储在缓存中几分钟来提高性能?这是好主意吗?如果是,我如何使用缓存存储结果,例如,以下查询?
$city = "Amersfoort";
if ($stmt = $mysqli->prepare("SELECT District FROM City WHERE Name=?")) {
$stmt->bind_param("s", $city);
$stmt->execute();
$stmt->bind_result($district);
$stmt->fetch();
printf("%s is in district %s\n", $city, $district);
$stmt->close();
}
感谢。
答案 0 :(得分:2)
如果SQL语句处理起来很便宜,您可能不需要缓存它们。如果它们需要大量计算或在非常大的数据集上运行,则可能需要缓存。请记住,缓存需要比SQL查询更快。
有几种方法可以在PHP中缓存:
您也可能希望缓存整个页面或部分页面而不是单个查询。