0

在这里,我遇到了一种情况,我需要在页面之间共享用户特定数据(如名字/姓氏/电子邮件等)而不使用会话。

我不能使用会话的原因是因为我们正在使用负载均衡器,它可能会分配不同的机器来服务用户的请求。

所以我公司严格规定避免使用会话。

由于一些限制,我们不能使用数据存储(sql)来存储会话。

现在,这里的一个关键问题是,我们如何在不使用会话/cookies/数据存储的情况下共享用户特定数据。

我有一个选项可以在每个请求上 ping 数据库以获取用户特定信息(这显然不是推荐的方法)

谁能帮我建议可以做些什么来跨页面共享用户特定信息。

注意:我使用的是 MVC4(Razor 引擎)

4

2 回答 2

1

我有一个选项可以在每个请求上 ping 数据库以获取用户特定信息(这显然不是推荐的方法)

事实上,这是推荐的方法。如果您担心可能会为您的数据库产生大量流量,您可以随时缓存结果。小心为缓存使用用户特定的键,以避免在用户之间混合信息。您也可以考虑使用分布式缓存,例如memcached跨节点。

于 2013-03-01T07:15:00.687 回答
0

可以使用 Cookie。

  • 在浏览器和服务器之间传输时会消耗额外的负载。
  • 它将存储在客户端计算机中。
  • 您可以使用自定义代码加密/解密数据以确保安全。
于 2013-03-01T08:52:13.267 回答