Hazelcast IMap.lock()是否需要CP子系统?

Hazelcast IMap.lock()是否需要CP子系统?,hazelcast,hazelcast-imap,Hazelcast,Hazelcast Imap,文档中说,CP子系统用于实现分布式协调用例,如领导人选举(Raft共识算法)、分布式锁定、同步和元数据管理。默认情况下,它在“”中运行,甚至会向控制台打印一条警告,指出无法保证强一致性 另一方面,它还表示,在处理诸如IMap之类的分布式数据结构时,默认情况下,数据总是从主副本写入和读取 因此,如果我禁用了CP子系统,并且使用了hazelcastInstance.getMap(“accounts”).lock(“123”),那么是否可以安全地假设,除非这个集群成员被释放,否则没有其他集群成员能够这

文档中说,CP子系统用于实现分布式协调用例,如领导人选举(Raft共识算法)、分布式锁定、同步和元数据管理。默认情况下,它在“”中运行,甚至会向控制台打印一条警告,指出无法保证强一致性

另一方面,它还表示,在处理诸如
IMap
之类的分布式数据结构时,默认情况下,数据总是从主副本写入和读取

因此,如果我禁用了CP子系统,并且使用了
hazelcastInstance.getMap(“accounts”).lock(“123”)
,那么是否可以安全地假设,除非这个集群成员被释放,否则没有其他集群成员能够这样做?或者我必须为此配置CP部件吗?我也只使用一个副本而不使用任何备份,如果这有什么不同的话

我认为应该可以,因为所有议员都要到同一个地方取锁。而且,在我看来,CP子系统中的“分布式锁定”部分实际上意味着它自己的部分,可以通过
hazelcastInstance.getCPSubsystem().getLock(“myLock”)
访问,因此地图上的锁是不同的