代码之家  ›  专栏  ›  技术社区  ›  adriaanp

缓存帐户信息

  •  1
  • adriaanp  · 技术社区  · 15 年前

    我目前正在ASP.MVC项目中使用自己的成员身份实现。我有一个帐户,一个帐户可以有一个以上的会员资格。

    我不确定缓存帐户信息的最佳方法是什么。我目前正在从控制器的用户属性加载几乎每个请求的帐户信息。

    我应该缓存帐户信息吗?如果哪里是最好的地方,饼干或会议?

    2 回复  |  直到 15 年前
        1
  •  1
  •   mtmk    15 年前

    我强烈建议不要参加会议。它们不能很好地扩展,也不适合Web/HTTP类型的体系结构。请参见中的“关键休息原则” this REST article 如果你喜欢剩下的东西。

    我建议把用户信息放在cookies中(不要做得太多,只是需要一些东西)。

    并在ASP.NET窗体身份验证cookie中保留敏感信息。见 Forms Authentication article ,“第4步:在票据中存储额外的用户数据”。

    从数据库中提取其余数据。避免 premature optimization .

        2
  •  0
  •   AUSteve    15 年前

    正如这些问题经常出现的情况一样,答案是“视情况而定”。

    如果您只存储少量的字符串数据,那么cookies就可以了。存在一些限制(每个cookie 4K,HTTP头限制),它们与每个请求和响应一起通过线路发送。您可能需要从存储在cookie中的数据“重新填充”您的帐户/成员信息。用户可以选择不接受来自您网站的cookie。

    会话是强类型的(没有重新膨胀),不会随每个请求/响应一起传输。如果您认为您的Web应用程序需要扩展会话存储,有几个选项可供选择。大多数中小型网站使用会话没有问题。