首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Infinispan远程延迟锁定

Infinispan远程延迟锁定
EN

Stack Overflow用户
提问于 2016-12-05 12:35:55
回答 1查看 205关注 0票数 0

我们使用InfinisPAN4.0作为缓存提供程序(我知道它有点过时,因为版本9是最新版本)。话虽如此,在阅读文档时,我感到有点困惑,因为这些文档指出:

Infinispan默认情况下是懒洋洋地获取远程锁。在运行事务的节点上本地获取锁,而其他集群节点试图在两阶段准备/提交阶段锁定事务中涉及的缓存密钥。但是,如果需要,Infinispan可以显式或隐式地锁定缓存密钥。

英飞凌的默认行为是什么?据我所知,它只锁定本地节点,但确切地说它何时锁定集群?例如,如果您有如下操作:

代码语言:javascript
复制
Cache.put(K,V)

当集群中的另一个节点尝试并发时,它是如何运行的?

代码语言:javascript
复制
Cache.put(K,V)

行动?这种远程延迟锁定是如何工作的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-07 09:37:57

这是关于交易的评论。使用事务,远程锁可以在cache.put(k, v) (急切)或tm.commit() (懒惰)期间获得。没有交易,两者就没有区别。

请注意,4.x中的锁定非常容易出现死锁。一个节点将获取本地锁,然后尝试获取所有其他所有者的锁,如果另一个节点试图同时写入相同的密钥,则很有可能出现死锁。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40974440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档