PHP,这是将数据存储到会话和数据库之间的更好方法吗?

时间:2012-03-30 09:26:45

标签: php mysql

我正在建立一个网站,为用户显示推荐页面。

用户只需点击下一个按钮即可查看不同的推荐网页。

我想检查用户可以进行的每项活动。

因此,我将检查用户实际看到的页面视图。

1. there is a 'user_pageview' column for each users.
2. the numbers will increase every time if users click next button.

我可以发送查询以每次更新数据。

但是,我相信这一步会让我的服务器烦恼。

所以,我想将数据保存到会话中一段时间​​并稍后保存。

您怎么看?

3 个答案:

答案 0 :(得分:3)

是的,它会让你的服务器烦恼并且#34; 就像你一样烦恼"你的车骑它。

数据库服务器的目的是操作数据 - 存储,检索,过滤等。
将数据存储在数据库中没有任何基本上错误。

可能存在问题,是的,索引重建(如果有的话) 但是,跟踪用户会话也会出现问题。

所以,我对会话感到烦恼,直到我遇到数据库问题(这很可能永远不会发生)。

答案 1 :(得分:1)

我不知道在每个网页浏览中增加user_pageview有什么问题,你可以做到

update table views set user_pageview = user_pageview + 1 where page_id = 4

您的PHP脚本无论如何都会连接到您的数据库,并且该查询本身不应该杀死您的服务器。

答案 2 :(得分:0)

将其保存到会话中也会“惹恼”您的服务器,因为您需要发出请求才能将其保存到会话中。

如果您的意思是数据库服务器,我的问题是:这是一个问题。您是否注意到数据库服务器正成为瓶颈?我不这么认为,因为数据库服务器应该能够轻松地处理它。

但是我确实有数据库性能问题而且你应该找到一种通过缓存来缓解数据库服务器的方法。例如,您可以将其存储在会话中(确保在销毁会话之前更新数据库),或者在客户端使用缓存(本地存储)。

再次,您应该只考虑这个数据库,因为数据库服务器成为瓶颈。如果是这种情况,我会首先尝试检查WTH是否与我的数据库出错(为什么它是瓶颈)。