Compartir a través de


TransactionalBatchRequestOptions.SessionToken Propiedad

Definición

Obtiene o establece el token para su uso con la coherencia de sesión en el servicio Azure Cosmos DB.

public string SessionToken { get; set; }
member this.SessionToken : string with get, set
Public Property SessionToken As String

Valor de propiedad

Token para su uso con coherencia de sesión.

Comentarios

Una de las para ConsistencyLevel Azure Cosmos DB es Session. De hecho, este es el nivel predeterminado que se aplica a las cuentas.

Al trabajar con la coherencia de la sesión, a cada solicitud por lotes con operación de escritura en Azure Cosmos DB se le asigna un nuevo SessionToken. CosmosClient usará este token internamente con cada solicitud de lectura, consulta o lote para asegurarse de que se mantiene el nivel de coherencia establecido.

En algunos escenarios, debe administrar esta sesión usted mismo; Considere la posibilidad de usar una aplicación web con varios nodos, cada nodo tendrá su propia instancia de CosmosClient Si desea que estos nodos participen en la misma sesión (para poder leer sus propias escrituras de forma coherente en todos los niveles web), tendrá que enviar sessionToken desde TransactionalBatchResponse la acción de escritura en un nodo al nivel de cliente, usar una cookie o algún otro mecanismo y hacer que el token vuelva al nivel web para las lecturas posteriores. Si usa un equilibrador de carga round robin que no mantiene la afinidad de sesión entre las solicitudes, como Azure Load Balancer, la lectura podría llegar a un nodo diferente a la solicitud de escritura, donde se creó la sesión.

Si SessionToken de Azure Cosmos DB no fluye tal y como se describió anteriormente, podría acabar con resultados de lectura incoherentes durante un período de tiempo.

https://docs.microsoft.com/azure/cosmos-db/consistency-levels

Se aplica a