你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

QueryRequestOptions.SessionToken 属性

定义

获取或设置用于 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。 CosmosClient 将在内部的每个读取/查询请求中使用此令牌,以确保维持设置的一致性级别。

在某些情况下,需要自行管理此会话;考虑具有多个节点的 Web 应用程序,如果 CosmosClient 希望这些节点参与同一会话 (能够跨 Web 层一致地读取自己的写入,) 必须将 SessionToken 从 FeedResponse<T> 一个节点上的写入操作发送到客户端层, 使用 Cookie 或其他一些机制,并让该令牌流回到 Web 层进行后续读取。 如果你使用的轮循机制负载均衡器(如 Azure 负载均衡器)不在请求之间维护会话亲和性,读取可能会落在与写入请求不同的节点上(已在其中创建会话)。

如果没有如上所述传递 Azure Cosmos DB SessionToken,你可能会在一段时间内得到不一致的读取结果。

适用于