我以前从未真正缓存过数据,但我觉得它会极大地改进我的网站。
基本上,我从有助于我网站基本功能的外部 API 中提取 JSON 数据。此信息并没有真正经常更改,但我的用户每天从 API 中提取信息数千次。如果一天更新一次就好了。我想每天运行一个 cron 作业来提取信息并更新缓存。
我已经尝试了一些不同的东西,都使用 PHP 拉取:
1) 将数据存储在SQL表中
我让它工作了,但我没有理由每次都 ping 数据库,因为我可以将它存储在基本的 HTML/JSON 中。
2) .JSON 文件(使用fwrite
)
我已经存储了它,但唯一可行的方法是将 .getJSON()
回调函数添加到 JSON 数据之前,然后数据被括号包围(我相信它是 jsonp)。
有没有人有任何建议或方向可以引导我?正如我所说,我从来没有真正做过这样的事情,所以我什至不知道我是否在朝着正确的方向前进。
编辑:
好吧,我和我的主机谈过了,因为我在共享主机 (dreamhost) 上,所以我无法安装 memcached,这很糟糕。他们能给我的唯一信息是,如果它在 http://pecl.php.net/ 上那么我很可能会使用它。他们说 APC 可用。我不确定这是否适合我的问题。我希望能够直接在 jQuery 中访问缓存。谢谢
最佳答案
您可以使用内存缓存。 Memcached 是一种内存中的键值存储,用于存储来自数据库调用、API 调用或页面呈现结果的任意小块数据(字符串、对象)。非常容易实现并且系统占用空间小。
关于php - 缓存 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6794788/