Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 高性能_Java_Sql - Fatal编程技术网

Java 高性能

Java 高性能,java,sql,Java,Sql,我需要引用数据库中的一组列并更新这些列。由于这组列在多个并行事务中是公共的/共享的,因此如何在不影响数据完整性和一致性的情况下实现良好的性能。为了提供更清晰的信息,我有一个长事务,其中,我做一些预处理并计算某些值。然后将该值与极限值进行比较。限制是公共/共享列,如果我继续处理事务,我必须更新该列。应用程序将有多个用户,他们将尝试执行类似的操作,并且必须与相同的“限制”进行比较并进一步进行。如果我正确理解您,则限制工作起来就像一种信号量。访问信号量不应该是正常事务的一部分。您希望立即增加限制,如果

我需要引用数据库中的一组列并更新这些列。由于这组列在多个并行事务中是公共的/共享的,因此如何在不影响数据完整性和一致性的情况下实现良好的性能。为了提供更清晰的信息,我有一个长事务,其中,我做一些预处理并计算某些值。然后将该值与极限值进行比较。限制是公共/共享列,如果我继续处理事务,我必须更新该列。应用程序将有多个用户,他们将尝试执行类似的操作,并且必须与相同的“限制”进行比较并进一步进行。

如果我正确理解您,则限制工作起来就像一种信号量。访问信号量不应该是正常事务的一部分。您希望立即增加限制,如果失败,您希望中止事务

实现这一点的一种方法是将限额增加作为子事务运行。如果使用事务划分,则可以使用


如果您想要更详细的答案,请稍微澄清您的问题。

什么是
限制
-某种索引?您可以使用hilo Optimizer吗?可能更适合程序员…大多数数据库不支持对同一个表的并行事务。如果需要事务同时工作,我建议您重新考虑您的设计。