使用HTTP Session VS序列化JSON数组来存储SQL结果

时间:2015-04-25 16:11:02

标签: php mysql json session

我有一堆使用相同源代码的虚拟主机子域。每个子域在设置表中都有一行,该行具有子域的设置。这些设置决定了要加载的html模板,年龄等级以及大约30个其他设置,因此它们至关重要。我不想在每次加载页面时查询数据库,而是希望找到一种在会话期间保存数据的方法,以减少数据库的负载。

如果我使用会话,我可以查询数据库,如果会话不存在,并将查询的内容保存到会话,然后我可以使用每个页面加载的值来确定页面应该如何显示。这里的问题是,所有用户的大量会话变量会产生性能损失吗?

或者我认为我可以查询数据库并将数组的内容保存为JSON文件。然后我可以在每次加载页面时读取文件以获取设置。这可以每小时左右刷新一次,并且可以在每个子域上的所有用户之间共享。这里的问题是对单个json文件的大量请求是否会损害磁盘性能?

1 个答案:

答案 0 :(得分:1)

传统上人们使用Memcache。它是一个内存缓存系统,用于存储键值对。 http://php.net/manual/en/book.memcache.php