在cookie中存储数据的效率

时间:2009-07-22 18:57:45

标签: php html cookies

在我的非会员网站上,我想跟踪用户最后通过Cookies收听的歌曲

此Cookie中的最大值数可能是100个值。歌曲的ID:(30,31,32,32,34 .......等等。)

有没有理由不这样做?

无论如何用户都没有经过身份验证。

这只是为了他们的利益而非必要。

我最担心的是它可能会影响页面性能。

4 个答案:

答案 0 :(得分:2)

如果你想用它只为用户显示,我不明白为什么不这样做。它只会增加用户发送到服务器的带宽。

但如果希望看到用户正在收听的内容,我建议你改用数据库,只向用户发送数据库中表的哈希值。像这样:

userid int(11)
hash string(26)
song string(100)

然后,只需将hash参数发送给用户,并从数据库中获取所有歌曲。

答案 1 :(得分:1)

保留数据有多重要? Cookie不保证在下一届会议期间提交;用户可能将其浏览器配置为在关闭时放弃cookie,或者静默忽略来自非白名单域的cookie。 Cookie可能也会在用户访问您的网站之间自然过期。

在我看来,作为任何重要数据的主要存储,cookie是一个糟糕的选择。我认为你最好将信息存储在数据库中;它应该是一个足够便宜的查询,以便在需要时将其拉出来,正如Nathan所指出的那样,您可以以便于您希望执行的任何数据挖掘,报告或比较操作的形式显示信息。

答案 2 :(得分:0)

我认为通过数据库进行操作可以保留所有数据。你仍然可以向他们展示他们听过的最后100首歌曲。如果您要求对它们进行身份验证以查看最后100首歌曲,那么我会说将数据保存在数据库上会更有意义(减少带宽等)。

答案 3 :(得分:0)

似乎没问题。请务必过滤/将您从Cookie中获取的内容列入白名单。