【问题标题】:How do I control transaction in Datastax java driver如何控制 Datastax java 驱动程序中的事务
【发布时间】:2014-01-25 02:07:31
【问题描述】:

我们计划使用 datastax 2.0。我们的应用程序中的驱动程序。我们的应用程序中有以下场景。有两种不同的交易,一种用于增加消耗,另一种用于减少消耗,可以同时进行。
例如:
让我们假设机器 1 的 Repair_Qty = 10 - 我正在进行新的维修,因此新的 Repair_Qty 应该是 10 + 1 .. 即同时来自机器 2 的 11,其他人正在取消维修。 Repair_Qty 应该是 11-1 = 10。但是,由于事务同时发生,并且没有事务锁,所以新的 Repair Qty 将是 10-1 = 9,这是错误的。
我想知道datastax java驱动程序中是否有某种机制支持WRITE-READ_WRITE锁。

请帮忙。

问候,
阿伦

【问题讨论】:

    标签: transactions datastax datastax-java-driver


    【解决方案1】:

    我建议您以某种方式在您的应用程序级别执行此操作。由于 cassandra 最终是一致的,因此这类操作往往会失败。

    【讨论】:

    • 我认为您的评论错过了这个想法。无法在应用程序级别处理分布式锁。人们总是需要某种实例来处理它。数据库是一个合乎逻辑的选择。更好的选择是通过更改数据模型来避免对锁定事务的需要,但这并非在所有情况下都是可能的。
    猜你喜欢
    • 2016-11-02
    • 2016-11-29
    • 2016-11-29
    • 1970-01-01
    • 2016-06-30
    • 2018-02-15
    • 1970-01-01
    • 2014-05-16
    • 2017-07-13
    相关资源
    最近更新 更多