out proc azure redis会话是如何获得功能的?

out proc azure redis会话是如何获得功能的?,azure,session,Azure,Session,情景: 我们正在使用azure redis会话提供程序。当页面首次加载时,从外部API检索数据并将其存储在redish会话中 相同的会话数据通过用户会话中的不同页面和组件进行检索。问题是: 应用程序是否只获取一次会话数据并在本地存储http当前上下文?或者每次它去redis商店 如果我们对set上的数据进行加密,并对Get操作上的数据进行解密,该怎么办 谢谢。应用程序每次请求时都会从Redis获取会话数据。。。对于编写部分,您必须等待字典密钥解锁。请参见假设您正在为此使用asp.net 页面通过

情景: 我们正在使用azure redis会话提供程序。当页面首次加载时,从外部API检索数据并将其存储在redish会话中

相同的会话数据通过用户会话中的不同页面和组件进行检索。问题是:

  • 应用程序是否只获取一次会话数据并在本地存储http当前上下文?或者每次它去redis商店

  • 如果我们对set上的数据进行加密,并对Get操作上的数据进行解密,该怎么办


  • 谢谢。

    应用程序每次请求时都会从Redis获取会话数据。。。对于编写部分,您必须等待字典密钥解锁。请参见假设您正在为此使用asp.net

    页面通过将@page指令上的EnableSessionState属性设置为true来声明对会话状态的写访问。(这是默认设置。)但是,页面也可以对会话状态具有只读权限,例如,当EnableSessionState属性设置为只读时。在这种情况下,模块将在会话上保持读卡器锁,直到对该页面的请求完成。因此,可能会出现并发读数

    如果页面请求设置了读卡器锁,则同一会话中其他并发处理的请求无法更新会话状态,但至少允许读取。这意味着在服务会话只读请求时,等待只读请求的优先级高于需要完全访问的请求。如果页面请求在会话状态上设置了writer锁,则所有其他页面都将被阻止,无论它们是必须读取还是写入。例如,如果两个帧试图写入会话,其中一个帧必须等待另一个帧完成

    Redis只是HttpSessionState模块的包装器(或抽象)