php - 让 PHP 解析大文件是否比从 MySQL 数据库调用数据更快?

标签 php mysql arrays performance serialization

所以。我在 MySQL 数据库中有一个数据表,例如:

  • 艺术家姓名
  • 艺术家传记
  • 艺术家年龄

例如:100 位艺术家。

因为这些数据很少会被修改,所以我创建了一个接口(interface),当数据被管理员修改使用内容管理系统时,系统查询数据库,并保存一个序列化的 PHP数据数组作为服务器上的文件。

每次添加新艺术家时都会重新创建此文件,比如每周一次。

在前端,当页面被加载而不是查询数据库时,页面只包含 文件(使用输出缓冲)并从该对象生成 HTML 页面布局。

这是个好主意吗?这会比每次加载页面时让数百名用户查询数据库更快吗?

作为这个问题的扩展,如果我开始分页数据,例如将 MYSQL 结果对象的限制设置为 10 行,将整个表作为 PHP 数组访问并将其分成 10 组 - 根据查询字符串回显相关部分是否会更慢?

最佳答案

它可能会更慢。将其存储在文件系统上将需要对完整 文件进行反序列化,即使您只需要一小块数据也是如此。

永远不要忘记:数据库快速!如果他们不是,你就错过了一个索引 ;)

PS:如果您想提高性能(并且只有在您确实需要时才这样做!)要么使用 APC,要么更好地缓存完全生成的页面,这样它就可以近乎静态地提供。

关于php - 让 PHP 解析大文件是否比从 MySQL 数据库调用数据更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4071349/

相关文章:

php - foreach 和 simplexml

php - Magento 编程和类的使用

mysql - MySQL中INSERT可以返回不自动递增的ID吗

ruby-on-rails - 试图只显示重复值

c++ - 请求数组成员时收到错误

javascript - 如何卸载新 WooCommerce 2.3.x 加载的 select2 脚本/样式?

php - CodeIgniter 默认的数据库驱动是 mysql 而不是 mysqli

javascript - HTTP请求删除记录,然后从数组中删除obj Vue.js

mysql - MySQL 的 DIV 运算符有 CEIL 版本吗?

mysql - 标准化 : is it done good?