PHP - 用于不经常更新的信息的MySQL调用或JSON静态文件

时间:2016-04-22 17:46:44

标签: php mysql json

我有一个与MySQL数据库关联的重读网站。我还有一些小的“辅助”信息(截至目前为30-40个元素的数组),分层组织,并且每年定期和缓慢更新4-5次。它不是配置文件,因为这些信息是关于网站的主题而不是它的功能,但仍然是一种配置文件。到目前为止,我只使用了一个包含信息数组的静态PHP文件,但现在我需要一种方法来通过我的管理面板中的后端CMS更新它。

我想到了一个简单的CMS,允许管理员创建/编辑/删除条目,定期罕见的作业,然后创建一个静态JSON文件供页面构建脚本使用,而不是从db中提取此信息。< / p>

问题是:鉴于网站的重读性,在构建页面时是否最好在服务器上读取很少更新的JSON文件,或者只是为每个请求从数据库中检索原始信息?

2 个答案:

答案 0 :(得分:1)

  

我刚刚使用了静态PHP

这听起来像是我的矛盾。静态或PHP。

  

鉴于网站的重读性,在构建页面时是否最好在服务器上读取很少更新的JSON文件,或者只是为每个请求从数据库中检索原始信息?

缓存是出于某种原因而发明的:)与您的情况相同 - 这完全取决于数据更改频率与读取频率的频率。如果数据每天更改一次并且在白天下载量为100k时保持静态,那么不缓存或不从平面文件提供服务将简直是愚蠢的。如果数据每天更改一次并且平均每天读取20次,那么从每次请求的代码返回数据可能不那么愚蠢,但另一方面,所有这19项请求都可以从缓存中提供,所以...如果可以,请从平面文件中提供。

答案 1 :(得分:0)

缓存是您的最佳选择,Redis或Memcached是常见的绝佳选择。对于平面文件或数据库,很难知道,因为您正在使用的SQL模式(如,有多少列,什么是数据类型定义,有多少外键和索引等)你正在使用。

SQL是关于关系数据的,如果你有非关系数据,你就没有理由使用SQL。大多数人现在都在切换到NoSQL数据库来处理这个问题,因为在事实是一个巨大的痛苦之后修改SQL数据库。