Broadleaf commerce 为什么在Broadleaf中有两种OrderLockManager实现?

Broadleaf commerce 为什么在Broadleaf中有两种OrderLockManager实现?,broadleaf-commerce,Broadleaf Commerce,在Broadleaf中,CessionOrderLockManager和DatabaseOrderLockManager都可以被CartStateFilter用来序列化用户请求。 前者似乎锁定与请求相关联的会话,而后者锁定嵌入请求正文中的顺序 我的问题是,为什么这两种实现都存在?所提供的语义是否存在差异?是否存在基于会话的锁不够用的情况?(通过git历史记录,我发现数据库锁实现是在之后引入的。) 非常感谢 p、 我不熟悉HTTP会话。如果有任何陈述是错误的,请纠正我 [编辑]还有一个相关问题:

在Broadleaf中,
CessionOrderLockManager
DatabaseOrderLockManager
都可以被
CartStateFilter
用来序列化用户请求。 前者似乎锁定与请求相关联的会话,而后者锁定嵌入请求正文中的顺序

我的问题是,为什么这两种实现都存在?所提供的语义是否存在差异?是否存在基于会话的锁不够用的情况?(通过git历史记录,我发现数据库锁实现是在之后引入的。)

非常感谢

p、 我不熟悉HTTP会话。如果有任何陈述是错误的,请纠正我


[编辑]还有一个相关问题:为什么要使用锁?似乎标记服务方法
@Transactional
就足够了