【发布时间】:2018-09-01 03:48:12
【问题描述】:
我正在开发一个使用 Web API 2 的项目,并试图找到将用户配置保存在内存中的最佳方法。
每个用户都有一个特定的配置(时区、位置、语言、其公司信息以及更多信息),所以我试图实现一种在首次登录时查询这些信息并将其保存到内存或其他东西的方法。所以这些信息经常被许多操作使用,我不想在每次需要时都查询所有这些信息来降低应用程序的性能。
所以,第一个计划是使用这些信息实现一个静态类,但我不知道这是否是最好的方法。
有人可以建议在 Web API 2 上实现此功能的最佳方法吗?
【问题讨论】:
-
如果你的服务是 RESTful 的(根据
rest标签),添加服务器端会话状态会破坏它。 -
您可以使用
HttpContext.Current.Cache。例如。见this answer -
可以使用redis缓存
-
内存托管在这种情况下会有所帮助:strathweb.com/2012/06/…
-
根据数据量,您可能会发现基于声明的身份验证是合适的。数据将被编码在一个令牌中,该令牌是每个 API 请求的一部分。
标签: c# asp.net rest web-services authentication