gpt4 book ai didi

java - 如何限制 Java Web 应用程序中的 Web 服务调用

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:21:13 25 4
gpt4 key购买 nike

我的需求非常简单易懂。

我想从我的 Java 网络应用程序调用网络服务,限制为每分钟最多 10 次网络服务调用。 1 分钟后,我可以再建立 10 个连接,无论前 10 个 Web 服务调用的状态如何(完成或未完成)。

有人可以指导我实现这个的方法吗?任何教程或有用的链接?

最佳答案

我们使用 RequestThrottler (gist)那是 inspired by this blog post .

用法:

private static final int MAX_CALLS = 10;
private static final int PER_INTERVAL = 60000; // 60s
private static final int MAX_WAIT = 2000; // 2s

private RequestThrottler _throttler = new RequestThrottler(MAX_CALLS, PER_INTERVAL);
private SomeWebService _service = new SomeWebService();

public void callService() {
throttler.startRequest(MAX_WAIT);
_service.call();
}

并不是说您可能必须处理可能的拥塞,特别是如果您计划无限期等待作为 Web 请求的一部分。

关于java - 如何限制 Java Web 应用程序中的 Web 服务调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7832512/

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