gpt4 book ai didi

java - block /方法中控制并发的逻辑

转载 作者:行者123 更新时间:2023-12-02 08:33:52 25 4
gpt4 key购买 nike

1)我的环境是Web应用程序,我开发servlet来接收请求。

A)在某些 block /方法中,我想控制并发数不大于5
B) 如果该 block 中有 5 个请求,则新来的请求必须等待最多 60 秒然后抛出错误
C) 如果 sleep /等待请求超过30个,第31个请求将抛出错误

我该怎么做?

2)(可选问题)从上面我必须将控制逻辑分发到所有集群主机。我打算使用hazelcast共享控制逻辑(例如电流计数器)

我看到他们提供了 BlockingQueue 和 ExectorService,但我不知道如何在我的情况下使用。有想法请推荐。

最佳答案

看看这个:http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/Semaphore.html

对于B,看看Object.wait()和Object.notify()

如果你有 A 和 B,C 应该很容易。

关于java - block /方法中控制并发的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2480738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com