你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
ItemRequestOptions.SessionToken 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置用于 Azure Cosmos DB 服务中的会话一致性的令牌。
public string SessionToken { get; set; }
member this.SessionToken : string with get, set
Public Property SessionToken As String
属性值
用于会话一致性的令牌。
注解
Azure Cosmos DB 的 ConsistencyLevel 其中一个是会话。 事实上,这是应用于帐户的默认级别。
使用会话一致性时,将为向 Azure Cosmos DB 发出的每个新的写入请求分配一个新的 SessionToken。 DocumentClient 将在内部将此令牌用于每个读取/查询请求,以确保保持设置的一致性级别。
在某些情况下,需要自行管理此会话;考虑具有多个节点的 Web 应用程序,如果 Microsoft.Azure.Cosmos.DocumentClient 希望这些节点参与同一会话 (能够跨 Web 层一致地读取自己的写入,) 必须将 SessionToken 从 ItemResponse<T> 一个节点上的写入操作发送到客户端层, 使用 Cookie 或其他一些机制,并让该令牌流回到 Web 层进行后续读取。 如果你使用的轮循机制负载均衡器(如 Azure 负载均衡器)不在请求之间维护会话亲和性,读取可能会落在与写入请求不同的节点上(已在其中创建会话)。
如果没有如上所述传递 Azure Cosmos DB SessionToken,你可能会在一段时间内得到不一致的读取结果。