在数据管理编程中,并发控制是一种机制,旨在确保并发操作产生准确的结果。这些结果也必须及时获得。并发控制经常出现在数据库中,其中有供用户获取的可搜索信息的缓存。女人在与计算机进行倒立程序员试图以这样一种方式来...
在数据管理编程中,并发控制是一种机制,旨在确保并发操作产生准确的结果。这些结果也必须及时获得。并发控制经常出现在数据库中,其中有供用户获取的可搜索信息的缓存。女人在与计算机进行倒立程序员试图以这样一种方式来设计数据库:重要事务对共享数据的影响将是串行等效的。这意味着,与事务集接触的数据将处于某种状态,如果所有事务都以特定的顺序串行执行,则可以获得结果。有时由于同时被两个事务修改,该数据是无效的。有多种方法可以确保事务一个接一个地执行,包括使用互斥以及创建一个资源来决定哪些事务有权访问。但是,这是一种过度的做法,不允许程序员从分布式系统中的并发控制中获益。并发控制允许同时执行多个事务,同时使这些事务彼此远离,如果一个事务的并发性被锁定,那么另一个事务的并发性将被锁定要解锁的对象。这个方法在分布式系统中的实现涉及到锁管理器(即发出资源锁的服务器)。这与用于集中相互排除的服务器非常相似,在这种服务器中,客户端可以请求锁并发送消息以释放特定资源上的锁但是,对于并发控制来说,保持串行执行仍然是必要的。如果两个独立的事务访问一个相似的对象集,则结果必须相似,并且就像这些事务是按特定顺序执行的一样。为了确保访问资源的顺序,引入了两阶段锁定,这意味着事务是一个单独的锁释放后不允许有新的锁,在并发控制的两阶段锁中,初始阶段被认为是增长阶段,在这个阶段事务获得所需的锁,下一个阶段被认为是收缩阶段,其中事务已释放其锁。此类型的锁定存在问题。如果事务中止,则其他事务可能会使用被中止的事务修改和解锁的对象中的数据。这将导致其他事务中止
-
发表于 2020-08-07 10:12
- 阅读 ( 971 )
- 分类:电脑网络