【问题标题】:Performance asp.net and cookie性能 asp.net 和 cookie
【发布时间】:2009-04-22 01:10:58
【问题描述】:

编写一个 asp.net 购物车。我正在利用会话来获取状态,但我也想将基本信息存储在 cookie 中。此信息将是项目/数量。我知道 cookie 的大小限制,但问题在这里。

是否有关于写入 cookie 而不是 sql 的性能成本的任何信息来源。在我目前的用例中,我最多会在每个页面帖子上写入 cookie(当然只有必须处理购物车的页面)

只是试图确定使用 cookie 的负面影响。

【问题讨论】:

    标签: asp.net performance cookies


    【解决方案1】:

    影响因素太多,无法回答这个问题。

    您的数据库有多快?网络有多快?最终用户的网络连接速度有多快?

    一般来说:cookie 足够快。 但构造良好的数据库调用也是如此。

    我在打这个电话时会考虑其他因素。 Cookie 可能会消失,它们会超时,并且您通常无法真正控制它们。那是问题吗?如果是,则执行sql。如果没有,那就做一个cookie。数据的安全性是一个问题吗?如果是,则执行 sql。

    顺便说一句:我做过的大多数购物车都使用 sql 来处理大部分数据。

    【讨论】:

    • 我同意所有因素,我来自一个 sql 后端购物车,我不喜欢架构的一些地方。 cookie 中的数据没有价值,可以销毁。
    【解决方案2】:

    根据我的经验,编写 cookie 比调用数据库的成本要低得多,但是您想要存储多少数据,如果客户端阻止 cookie,是否会破坏功能?

    如果您希望使用 cookie 保持会话,为什么不在用户第一次到达时创建一个标识符 cookie 并将此 id 存储在会话数据中。然后当会话结束而不保存购物篮时(即在会话结束事件中)将会话数据刷新到带有 cookie 标识符的数据库。然后,当用户稍后返回该站点时,通过获取 cookie 标识符来提供从数据库中恢复他们最后一个购物篮。

    【讨论】:

      猜你喜欢
      • 2021-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-29
      • 2011-11-19
      • 2021-02-08
      • 2016-07-10
      • 1970-01-01
      相关资源
      最近更新 更多