Java中的分布式计数信号量

Java中的分布式计数信号量,java,algorithm,java-8,semaphore,Java,Algorithm,Java 8,Semaphore,我正在寻找一个分布式信号量实现(使用postgres/zookeeper作为存储),它类似于java.util.concurrent.semaphore的概念,它将维护一组许可证,这些许可证将使用acquire()获取,并使用release()发布允许我限制对某些资源的访问或同步某些执行。唯一的区别是,这个信号应该允许我跨多个JVM执行所有这些操作 有人能告诉我,在java中是否有这样的实现,或者实现相同的实现的任何参考算法吗?对于zookeeper,您可以使用提供共享信号量抽象的库 在PrEG

我正在寻找一个分布式信号量实现(使用
postgres
/
zookeeper
作为存储),它类似于
java.util.concurrent.semaphore
的概念,它将维护一组许可证,这些许可证将使用
acquire()
获取,并使用
release()发布
允许我限制对某些资源的访问或同步某些执行。唯一的区别是,这个信号应该允许我跨多个JVM执行所有这些操作

有人能告诉我,在java中是否有这样的实现,或者实现相同的实现的任何参考算法吗?

对于zookeeper,您可以使用提供共享信号量抽象的库


在PrEGRESs中,您可以考虑使用咨询锁来实现这一点,并在上面实现一个可应用的类库。

查看本教程,我询问一个可以跨JVM使用的分布式信号量。