并发用户访问同一行时 Cassandra 行级锁定支持

标签 cassandra shopping-cart

我们正处于购物车应用程序的设计阶段,我们正在考虑将 Cassandra 作为库存数据库。多个用户需要能够同时访问库存数据库中的同一产品行。

例如,产品表包含:

productID =1000, productQuantitiy = 1

productID =2000, productQuantitiy = 5

如果第一个用户选择产品 1000 并在购物车中添加产品数量 1,则其他用户应该无法选择该产品,直到第一个用户(将产品数量更新为 0)丢弃该产品。

或者,如果第一个用户选择了产品 2000 中的 3 个,则访问同一产品的其他用户应该无法选择相同数量的该产品,直到第一个用户(将产品数量更新为 2)丢弃一些产品。

Cassandra 是否为这种情况提供行级锁定支持?

最佳答案

Cassandra 没有内置的锁定支持 yet 。 Astyanax API 提供 recipes这些是常见用例的实现,其中之一,Distributed Row Lock ,用于此类锁定。

关于并发用户访问同一行时 Cassandra 行级锁定支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18446435/

相关文章:

c# - 购物车中的特殊逻辑\算法

java - 在 Java 中使用 ArrayList

cassandra - 为什么在 Cassandra 中不支持计数器表的条件更新?

java - Cassandra实时统计计数器列

cassandra - 批处理中的 Cassandra 语句是否可以使用 cpp 驱动程序具有单独的时间戳?

php - 点击立即付款按钮后 Paypal 会产生任何事件吗?

php - 以特定方式显示数组元素

php - 将用户购物篮连接到他们的用户帐户? PHP

python - 用于 python cassandra 的 SStablewriter

Cassandra 最大现实 blob 大小