使用PHP中的Amazon DynamoDB实现乐观锁定/CAS
我想知道如何在PHP中对DynamoDB使用非阻塞乐观锁定(也称为“乐观并发控制”、“检查并设置”或“测试并设置”)。我在在线文档中看到了Java和.NET中的示例,但PHP中没有使用PHP中的Amazon DynamoDB实现乐观锁定/CAS,php,amazon-web-services,locking,amazon-dynamodb,Php,Amazon Web Services,Locking,Amazon Dynamodb,我想知道如何在PHP中对DynamoDB使用非阻塞乐观锁定(也称为“乐观并发控制”、“检查并设置”或“测试并设置”)。我在在线文档中看到了Java和.NET中的示例,但PHP中没有 我正在寻找的功能类似于PHP中的功能。这是否可用,如果可用,文档在哪里?这是与预期属性相同的updateItem方法: $response = $client->updateItem(array( "TableName" => $tableName, "Key" => array(
我正在寻找的功能类似于PHP中的功能。这是否可用,如果可用,文档在哪里?这是与
预期属性相同的updateItem方法:
$response = $client->updateItem(array(
"TableName" => $tableName,
"Key" => array(
"Id" => array(Type::NUMBER => 121)
),
"AttributeUpdates" => array(
"Price" => array(
"Value" => array(Type::NUMBER => 25)
)
),
"Expected" => array(
"Price" => array(
"Value" => array(Type::NUMBER => 20)
)
),
"ReturnValues" => ReturnValue::ALL_NEW
));
请参见此处的更多示例:
因此,我们可以手动实现令牌,并在每次更新时增加它。很好,这是可行的。getItem应该返回一个cas_令牌,以防数据结构复杂,并且必须在用户数据的源端使用一个单独的属性作为令牌。你知道如何实现吗?