应存储在会话中的数据量

时间:2010-12-21 17:32:08

标签: php javascript static

假设
我知道存储大量数据并不好,而且需要这么简单。

今天陈述
现在我使用最小需要并使用简单的数据类型(int和字符串)
主要用于存储用户的ID并告知他是否已登录。

我的函数必须是静态的或单个的,每个post / get都需要构建。

我无法表示当前状态并进行更改 并获得一个很强的静态网站 大多数州代表进入javascript。

:定位
另一方面,如果我创建一个代表整个网站的对象,我将更容易维护用户的输入,包括数据库交互。

简单的问题,那里应该存储多少数据?

示例

我想要实现的一件事是 与数据库表相关的对象,
我们来一页“ car.update()”。

现在,如果我为它存储一个对象,则使用方法
扩展与数据库的连接 对于CRUD。

当我从该页面处理回帖时,我可以将它们放在需要的属性中并调用更新方法。

现在的情况:我需要创建一个包含该细节的新对象并进行静态更新

另一个例子

存储以前的搜索结果并使用新数据对其进行过滤

4 个答案:

答案 0 :(得分:3)

在许多情况下,理想的数量是 none 。将用户名存储在cookie中,并附带HMAC哈希,用于验证您的站点是否创建了cookie,并根据需要从数据库(或缓存)获取其他所有内容。这样可以轻松地跨服务器进行负载平衡,因为任何服务器都可以处理任何请求,并且没有需要在它们之间共享的状态。

此方法不适合银行业务或其他顶级安全用途,因为如果有人获取您的cookie,则他们会像您一样进行连接。但是对于那些你没有做任何超级批评的网站而言,它非常棒。通过在cookie处理中添加过期机制,也可以稍微减轻风险。有关详细信息,请参阅与其他HMAC问题相关的chubbards great answer

答案 1 :(得分:1)

请注意,您可以使用session_set_save_handler切换PHP存储数据的方式。然后,您不必更改呼叫,并且可以通过数据库的效率来提高性能/维护。

答案 2 :(得分:0)

最小值是用户I.D.-假设它是登录类型的接口。但是包含最常见的方面通常很有帮助,例如用户的权限和存储在数据库中的其他项目,但在构造页面时经常被引用。

答案 3 :(得分:0)

您不应该存储大量数据,但是如果它可以帮助您更快地为您提供服务,那么您可以毫无问题地存储一些用户信息。

但是如果你想建立一个更加动态的网站,你可能会从数据库中搜索越来越多的数据。因此,当您连接到数据库时,您可以跳过在会话中存储各种信息,因为您也可以从数据库中获取它们。大多数数据库(包括MySQL)都有一个非常有效的查询缓存,可以快速重复查询。

因此,在这种情况下,您需要比userid和少量标记保存更多。