Concurrency 并发问题:减少帐户的信用

Concurrency 并发问题:减少帐户的信用,concurrency,Concurrency,嗨,我们尝试实现一个过程,比如当用户做了什么,他的公司的信用将相应扣除 但是,当一家公司中的多个用户由于信用被错误扣除而参与该过程时,会出现并发问题 有人能为这一问题指出正确的方向吗? 非常感谢 这是一个完全独立于实现语言的经典问题 您有一个维护持久数据存储的共享资源。(这通常是一个数据库,可能是一个RDBMS) 您还有一个(业务)流程,使用和/或修改共享数据存储中维护的信息 当这个过程可以由多个参与者同时执行时,就会出现信息完整性问题 解决此问题的最常见方法是序列化对共享资源的访问,以便对共享

嗨,我们尝试实现一个过程,比如当用户做了什么,他的公司的信用将相应扣除

但是,当一家公司中的多个用户由于信用被错误扣除而参与该过程时,会出现并发问题

有人能为这一问题指出正确的方向吗?
非常感谢

这是一个完全独立于实现语言的经典问题

您有一个维护持久数据存储的共享资源。(这通常是一个数据库,可能是一个RDBMS)

您还有一个(业务)流程,使用和/或修改共享数据存储中维护的信息

当这个过程可以由多个参与者同时执行时,就会出现信息完整性问题

解决此问题的最常见方法是序列化对共享资源的访问,以便对共享资源的操作按顺序进行

这种序列化可以发生在参与者级别,也可以发生在共享资源本身,可以采取多种形式,例如排队操作、使用消息传递或在共享资源上使用事务。在这里,系统类型、应用程序、使用的平台和系统等考虑因素变得非常重要,并决定了整个系统的设计


看看这个,然后谷歌你的方式,以更多的技术内容在这个主题。您可能还希望了解信息系统,如果您喜欢冒险,也可以阅读。

什么语言?并发问题发生在哪里?它是否引发了一些异常?