PHP持久性缓存数据

时间:2017-08-17 16:41:57

标签: php caching

我需要在缓存中保存一个半静态大对象,所以我不需要每次都从数据库请求它。像$ _SESSION这样的东西,但没有绑定到会话,因为数据对所有用户都是通用的。 我可以在客户端缓存数据,一旦我得到它,但我想避免用大量数据的选择查询来干扰数据库(几乎)永远不会改变。

另外,我无法在此环境中添加模块(如APC缓存)。

我可以将我的数据存储到一个文件中,比如一个JSON,我用php读取而不是查询数据库,但访问文件系统也令人不安,如果php需要每秒多次执行它并且文件大小不是很小。

在php中是否有内置的方法将对象存储在内存中,这对所有php实例都是通用的?

编辑:我可以使用$ _session作为存储空间,强制session_id始终相同吗?危险吗?我没有为应用程序本身使用会话。我尝试了它的工作原理

1 个答案:

答案 0 :(得分:0)

大多数操作系统都会将从磁盘读取的结果存储在缓存中。

这意味着每次都不会点击磁盘。基于文件的存储实际上对于同一文件的多次读取非常快,因为它实际上直接来自内存。

只要“相当大”仍然意味着适合记忆,这种方式应该没问题