通过共享文件系统限制进行群集范围锁定

时间:2017-03-14 07:30:24

标签: java java-8 locking cluster-computing

我的系统中有几个节点构成一个逻辑集群。有一个非常敏感的流程需要节点在关键部分进行同步。

由于各种原因,我不能使用像hazelcast这样的分布式框架。

我有一个缓解措施。所有节点都连接到共享文件系统。

我认为我可以利用它来实现一个简单且有希望可靠的群集范围锁。

我用Java编程(1.8):

// 'file' is a path shared between the nodes. 
FileChannel fc = FileChannel.open(Paths.get(file), StandardOpenOption.APPEND);
FileLock lock = fc.lock();

System.out.println("Critical section"); // may take up to two minutes

lock.release(); 

我的问题:这种方法有任何限制吗?我猜这对底层操作系统,文件系统及其配置非常敏感。

我很想知道什么时候工作。

0 个答案:

没有答案